如何开始android开发_如何开始进行Android开发

如何开始android开发

Android开发简介 (An intro to Android Development)

Android apps can be a great, fun way to get into the world of programming. Officially programmers can use Java, Kotlin, or C++ to develop for Android. Though there may be API restrictions, using certain tools developers can use a large number of languages, including JavaScript, C, or assembly. The possibilities are endless.

Android应用程序可能是进入编程世界的一种非常有趣的好方法。 正式而言,程序员可以使用Java,Kotlin或C ++进行Android开发。 尽管可能会有API限制,但是使用某些工具,开发人员可以使用多种语言,包括JavaScript,C或汇编语言。 可能性是无止境。

From simple games and utility apps to full-blown music players, there are many opportunities to create something meaningful with Android. The Android developer community is widespread, and the documentation and resources online are easy to find, so that you can tackle any issue you’re facing.

从简单的游戏,实用程序应用程序到功能完善的音乐播放器,都有许多机会可以使用Android创建有意义的内容。 Android开发人员社区非常广泛,在线文档和资源也很容易找到,因此您可以解决所遇到的任何问题。

There is definitely a learning curve to get used to the Android framework. But once you understand the core components that make up the app, the rest will come naturally.

一定要适应Android框架,这是一条学习曲线。 但是,一旦您了解了构成应用程序的核心组件,其余的一切就自然而然地出现了。

The learning curve involved in Android has a relatively smaller slope compared to learning other technologies such as NodeJS. It is also relatively easier to understand and make contributions towards AOSP hosted by Google. The project can be found here.

与学习其他技术(例如NodeJS)相比,Android中涉及的学习曲线的斜率相对较小。 相对容易理解,并为Google托管的AOSP做出贡献。 该项目可以在这里找到。

入门 (Getting started)

Check out the guides in this folder to learn about the 4 core components that make up an Android app and how you can get started with a sample app. Then delve into the more advanced topics such as fragments and the Gradle build system. Finally, check out the material design specifications guide as well to learn how to make your apps beautiful and user friendly.

查看此文件夹中的指南,以了解组成一个Android应用程序的4个核心组件 ,以及如何开始使用示例应用程序。 然后深入研究更高级的主题,例如片段和Gradle构建系统。 最后,还请查看材料设计规范指南,以了解如何使您的应用程序美观和用户友好。

Android Studio的设置和入门 (Setting Up and Getting Started with Android Studio)

Go to this link and install the latest JDK. Now download the Android Studio and SDK tools bundle from here. Install the Android Studio and SDK following the set up. Keep note of the SDK location. If you face any errors go to settings later to resolve them.

转到此链接并安装最新的JDK。 现在从此处下载Android Studio和SDK工具包。 按照设置安装Android Studio和SDK。 记下SDK的位置。 如果遇到任何错误,请稍后再进行设置以解决它们。

Lastly, learn to integrate 3rd party libraries and Firebase services to add functionality to your app. It would be helpful if you go through the official documentation for each component.

最后,学习集成第三方库和Firebase服务以向您的应用程序添加功能。 如果您仔细阅读每个组件的官方文档,将会很有帮助。

官方文件 (Official Documentation)

Google Developers Guide for Android

适用于Android的Google开发者指南

Java与Kotlin:要学习哪种语言? (Java vs. Kotlin: which language to learn?)

Ever since Google announced Kotlin as the official language for Android development at Google IO in 2017, programmers who want to become Android developers have a dilemma. The big question in front of them is whether they should learn Kotlin or Java.

自从Google在2017年宣布Kotlin作为Google IO的Android开发官方语言以来,想要成为Android开发人员的程序员就陷入了困境。 他们面前最大的问题是他们应该学习Kotlin还是Java。

Android开发的初学者应从Java开始 (Beginners in Android Development Should Start With Java)

The first and foremost thing is that Android development is not everything. As a programmer, you may be starting your career with Android development. But if you start with a well-established language like Java, you become a part of the bigger Java community and market, which directly means more job opportunities.

首先也是最重要的是,Android开发还不是全部。 作为程序员,您可能会开始使用Android开发。 但是,如果您从像Java这样的成熟语言开始,您将成为更大的Java社区和市场的一部分,这直接意味着更多的工作机会。

The second and more important thing is that there is a huge community of Java programmers, which means you can find answers when you are stuck. This is very important because, as a beginner, you will face a lot of technical problems and you might not know where to head when you are stuck.

第二个也是更重要的一点是,有一个庞大的Java程序员社区,这意味着当您遇到困难时可以找到答案。 这是非常重要的,因为作为一个初学者,您将面临很多技术问题,并且在卡住时可能不知道要去哪里。

When you search Google with a Java problem, you are bound to get answers. But the same cannot be said for Kotlin, which is still a new programming language.

当您使用Java问题搜索Google时,一定会找到答案。 但是对于Kotlin来说却不能说相同,它仍然是一种新的编程语言。

Java程序员应该学习Kotlin (Java Programmers Should Learn Kotlin)

Now, coming back to the second set of programmers who want to learn Android development: our fellow Java developers. For them, I think it's best to learn Kotlin because it really improves productivity.

现在,回到第二组想要学习Android开发的程序员:我们的Java开发人员。 对于他们来说,我认为最好学习Kotlin,因为它确实可以提高生产力。

A class which takes 50 lines of code in Java can really be written in just one line in Kotlin. It can help you avoid all boiler-plate code - for example, you don’t need to specify getters and setters, equals(), hashCode() or toString() methods. Kotlin can generate all that by itself.

实际上,使用Java用50行代码编写的类实际上可以用Kotlin用一行编写。 它可以帮助您避免所有样板代码-例如,您不需要指定getter和setter,equals(),hashCode()或toString()方法。 Kotlin可以自己生成所有内容。

If you don’t know, Kotlin was development by JetBrains, the company behind one of the most popular Java IDEs, IntelliJ IDEA. They were a Java shop developing IDEs like IntelliJ IDEA, PyCharm, and ReSharper, all in Java. And then they built Kotlin to improve their productivity. But at the same time, they couldn't rewrite all their code in Kotlin, so that’s why they made Kotlin fully interoperable with Java.

如果您不知道,Kotlin是由JetBrains开发的,JetBrains是最流行的Java IDE之一IntelliJ IDEA背后的公司。 他们是一家Java商店,使用Java来开发诸如IntelliJ IDEA,PyCharm和ReSharper之类的IDE。 然后他们建立了Kotlin以提高生产力。 但是同时,他们无法用Kotlin重写所有代码,因此这就是为什么他们使Kotlin与Java完全互操作。

Because Kotlin generates Java bytecode, you can use your favorite Java frameworks and libraries in Kotlin and your Java friends can also use any Kotlin framework you develop.

由于Kotlin生成Java字节码,因此您可以在Kotlin中使用自己喜欢的Java框架和库,并且Java朋友也可以使用您开发的任何Kotlin框架。

Java资源: (Java resources:)

  • Java programming basics

    Java编程基础

  • The best Java examples

    最好的Java示例

  • The best Java 8 tutorials

    最好的Java 8教程

  • Java for absolute beginners - full video course

    适用于绝对初学者的Java-完整视频课程

Kotlin资源: (Kotlin resources:)

  • Still using Java for Android app development? Try Kotlin instead.

    还在使用Java进行Android应用开发吗? 尝试使用Kotlin。

  • Develop native Android apps with Kotlin - full video course

    使用Kotlin开发原生Android应用-完整的视频课程

  • Useful standard library functions in Kotlin

    Kotlin中有用的标准库功能

  • Functional programming in Kotlin

    Kotlin中的函数式编程

有关Android开发的更多信息: (More info on Android development:)

  • How to simplify your Android app's architecture

    如何简化Android应用的架构

  • An overview of Android storage

    Android存储概述

  • How to improve the build speed of your Android projects

    如何提高Android项目的构建速度

翻译自: https://www.freecodecamp.org/news/intro-to-android-development/

如何开始android开发

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/390597.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

httpd2.2的配置文件常见设置

目录 1、启动报错:提示没有名字fqdn2、显示服务器版本信息3、修改监听的IP和Port3、持久连接4 、MPM( Multi-Processing Module )多路处理模块5 、DSO:Dynamic Shared Object6 、定义Main server (主站点) …

leetcode 149. 直线上最多的点数

题目 给你一个数组 points ,其中 points[i] [xi, yi] 表示 X-Y 平面上的一个点。求最多有多少个点在同一条直线上。 示例 1: 输入:points [[1,1],[2,2],[3,3]] 输出:3 示例 2: 输入:points [[1,1],[3,…

solidity开发以太坊代币智能合约

智能合约开发是以太坊编程的核心之一,而代币是区块链应用的关键环节,下面我们来用solidity语言开发一个代币合约的实例,希望对大家有帮助。 以太坊的应用被称为去中心化应用(DApp),DApp的开发主要包括两大部…

2019大数据课程_根据数据,2019年最佳免费在线课程

2019大数据课程As we do each year, Class Central has tallied the best courses of the previous year, based on thousands of learner reviews. (Here are the rankings from 2015, 2016, 2017, and 2018.) 与我们每年一样,根据数千名学习者的评论, …

2017-12-07 socket 读取问题

1.用socke阻塞方式读取服务端发送的数据时会出现读取一直阻塞的情况,如果设置了超时时间会在超时时间后读取到数据: 原因:在不确定服务器会不会发送 socket发送的数据不会返回null 或者-1 所以用常规的判断方法是不行的。 解决办法有两个:1 …

静态代理设计与动态代理设计

静态代理设计模式 代理设计模式最本质的特质:一个真实业务主题只完成核心操作,而所有与之辅助的功能都由代理类来完成。 例如,在进行数据库更新的过程之中,事务处理必须起作用,所以此时就可以编写代理设计模式来完成。…

svm机器学习算法_SVM机器学习算法介绍

svm机器学习算法According to OpenCVs "Introduction to Support Vector Machines", a Support Vector Machine (SVM):根据OpenCV“支持向量机简介”,支持向量机(SVM): ...is a discriminative classifier formally defined by a separating …

6.3 遍历字典

遍历所有的键—值对 遍历字典时,键—值对的返回顺序也与存储顺序不同。 6.3.2 遍历字典中的所有键 在不需要使用字典中的值时,方法keys() 很有用。 6.3.3 按顺序遍历字典中的所有键 要以特定的顺序返回元素,一种办法是在for 循环中对返回的键…

Google Guava新手教程

以下资料整理自网络 一、Google Guava入门介绍 引言 Guavaproject包括了若干被Google的 Java项目广泛依赖 的核心库,比如:集合 [collections] 、缓存 [caching] 、原生类型支持 [primitives support] 、并发库 [concurrency libraries] 、通用注解 [comm…

HTML DOM方法

querySelector() (querySelector()) The Document method querySelector() returns the first element within the document that matches the specified selector, or group of selectors. If no matches are found, null is returned.Document方法querySelector()返回文档中与…

leetcode 773. 滑动谜题

题目 在一个 2 x 3 的板上(board)有 5 块砖瓦,用数字 1~5 来表示, 以及一块空缺用 0 来表示. 一次移动定义为选择 0 与一个相邻的数字(上下左右)进行交换. 最终当板 board 的结果是 [[1,2,3],[4,5,0]] 谜板被解开。…

数据科学领域有哪些技术_领域知识在数据科学中到底有多重要?

数据科学领域有哪些技术Jeremie Harris: “In a way, it’s almost like a data scientist or a data analyst has to be like a private investigator more than just a technical person.”杰里米哈里斯(Jeremie Harris) :“ 从某种意义上说,这就像是数…

python 算术运算

1. 算术运算符与优先级 # -*- coding:utf-8 -*-# 运算符含有,-,*,/,**,//,% # ** 表示^ , 也就是次方 a 2 ** 4 print 2 ** 4 , aa 16 / 5 print 16 / 5 , aa 16.0 / 5 print 16.0 / 5 , a# 结果再进行一次floor a 16.0 // 5.0 print 16.0 // 5.0 , aa 16 // 5 print …

c语言编程时碰到取整去不了_碰到编程墙时如何解开

c语言编程时碰到取整去不了Getting stuck is part of being a programmer, no matter the level. The so-called “easy” problem is actually pretty hard. You’re not exactly sure how to move forward. What you thought would work doesn’t.无论身在何处,陷…

初创公司怎么做销售数据分析_为什么您的初创企业需要数据科学来解决这一危机...

初创公司怎么做销售数据分析The spread of coronavirus is delivering a massive blow to the global economy. The lockdown and work from home restrictions have forced thousands of startups to halt expansion plans, cancel services, and announce layoffs.冠状病毒的…

leetcode 909. 蛇梯棋

题目 N x N 的棋盘 board 上,按从 1 到 N*N 的数字给方格编号,编号 从左下角开始,每一行交替方向。 例如,一块 6 x 6 大小的棋盘,编号如下: r 行 c 列的棋盘,按前述方法编号,棋盘格…

Python基础之window常见操作

一、window的常见操作: cd c:\ #进入C盘d: #从C盘切换到D盘 cd python #进入目录cd .. #往上走一层目录dir #查看目录文件列表cd ../.. #往上上走一层目录 二、常见的文件后缀名: .txt 记事本文本文件.doc word文件.xls excel文件.ppt PPT文件.exe 可执行…

WPF效果(GIS三维篇)

二维的GIS已经被我玩烂了,紧接着就是三维了,哈哈!先来看看最简单的效果: 转载于:https://www.cnblogs.com/OhMonkey/p/8954626.html

css注释_CSS注释示例–如何注释CSS

css注释Comments are used in CSS to explain a block of code or to make temporary changes during development. The commented code doesn’t execute.CSS中使用注释来解释代码块或在开发过程中进行临时更改。 注释的代码不执行。 Both single and multi-line comments in…

r软件时间序列分析论文_高度比较的时间序列分析-一篇论文评论

r软件时间序列分析论文数据科学 , 机器学习 (Data Science, Machine Learning) In machine learning with time series, using features extracted from series is more powerful than simply treating a time series in a tabular form, with each date/timestamp …