android - 请问不懂web开发,直接去学APP开发合适吗?
高洛峰
高洛峰 2017-04-17 16:13:10
0
11
897

如题,这样做会有什么后患吗?我说的是web app,当然不是native app。新人提问求别踩。

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

reply all(11)
左手右手慢动作

Let me talk about my learning experience. I was planning to learn Android development at this time last year. Since I had no Java foundation, I first learned Java for a while and felt that there was a lot of content. Then I was confused when looking at Android. Then I started learning HTML+CSS. I am interested in it, so I am very involved in basic web page layout and cross-platform app. I used phonegap+jquery mobile at first; during the period, I also used inter apicloud. Later, I was dissatisfied with the performance, so I learned vuejs. When I was about to look into react native, I realized that it would be better to just use native. Now I am going back to native Android. Web apps, hybrid apps, and native apps are essentially making apps, so in the final analysis, you still need to be familiar with the basic process of Android or iOS application development. Although there are currently some third-party platforms that can be developed without learning native development, it is indeed possible. , but from the perspective of the development of a programmer, people still can’t be too lazy. It’s better to learn more low-level skills and solve problems by themselves. Of course, if you directly make this kind of h5-based app, you are still essentially making a web page.

左手右手慢动作

The more you know about the technology stack, the better, but it definitely won’t work if you don’t understand it at all.
Now there are two types of app development, native app and web app.
If you go directly to learn app development, there will be no problem in developing native apps.
I suggest you find out more when you have time.

迷茫

It doesn’t matter at all.

洪涛

If you don’t know what you should learn, just try all the techniques you know, and you will become more and more ignorant, so that you can know what you are good at and what you love.

左手右手慢动作

I don’t think it’s appropriate. How can you develop a webapp if you don’t understand the web? If you develop the entire webapp yourself, you need to understand it. If you are not responsible for the web part, then you don’t have to understand the web part.

PHPzhong

What is the prerequisite for APP development? Hybrid APP will definitely not work; native and program communication are almost the same; not to mention web APP; I can only be an artist;

If you don’t understand the technology stack, communication is the biggest obstacle;

PHPzhong

WebApp is definitely inseparable from WebView. WebView is actually a browser, but it can save the password saved by the user to your application directory, such as /data/data/com.example.myapp/app_webview, without root In the mobile phones I have used, other applications cannot read the password information saved by these users. However, the highlight of WebView is website development, so Web technologies (HTML/CSS/JS/PHP/SQL) must not be lost. Take a look at the following The code of a simple App is just a few sentences, so the highlight is definitely not Java:
~/AndroidStudioProjects/myapp/app/src/main/java/com/example/myapp/MainActivity.java

package com.example.myapp;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MainActivity extends AppCompatActivity {
    private WebView webview;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        webview = new WebView(this);
        webview.getSettings().setJavaScriptEnabled(true);
        webview.setWebChromeClient(new WebChromeClient());
        webview.setWebViewClient(new WebViewClient() {
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                view.loadUrl(url);
                return true;
            }
        });
        webview.loadUrl("http://segmentfault.com");
        setContentView(webview); //在MainActivity上显示WebView
    }
    @Override
    public boolean onKeyDown(int keyCoder, KeyEvent event) {
        if(keyCoder == KeyEvent.KEYCODE_BACK && webview.canGoBack()) {
            webview.goBack();
            return true;
        }
        return super.onKeyDown(keyCoder, event);
    }
}

Then just apply for network access permissions for the application:
~/AndroidStudioProjects/myapp/app/src/main/AndroidManifest.xml

<manifest>节点内加入: <uses-permission android:name="android.permission.INTERNET" />

Mobile phone processors are not PC processors, so don’t pile up the set of front-end frameworks on the PC into WebView. WebView will be overwhelmed. It is enough to use jQuery to facilitate DOM operations and AJAX operations. The operation button (link area) should Make it bigger. For cross-page loading, you can use PJAX based on HTML5 pushState and AJAX (which is the page turning effect of the code directory on Github). Make a progress bar loading prompt at the top. Don’t load too many things on one page (waterfall flow is not necessary). (done), for example, after AJAX loads some comments, you should leave a link to view more comments, open a new page to view more comments, and try to keep the page as simple as possible, use IDs as selectors, and don’t pursue animation effects too much. You know, if the animation is not smooth, what is the point of such animation? The WebApp interface based on WebView should be kept simple (Keep It Simple, Stupid).

大家讲道理

Personally, if you haven’t gotten started with web apps, it is recommended to just learn native apps...

Once you get into the front-end, it’s as deep as the sea... There are many things to do, and there are many things to learn. The key is that you are not welcome in most companies. The salary is much worse than that of the APP, not to mention that of the back-end... Of course some big companies will be better...

Peter_Zhu

Learn if you want to, and you will gradually understand.

Peter_Zhu

The essence of web app is still web...

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template