导航:首页 > 程序命令 > 程序员android

程序员android

发布时间:2022-07-13 12:24:31

❶ 作为一个程序员怎么通过android开发赚钱

1、好好的去上班,现在一个做过项目的Android程序员薪资在12-30K不等。和团队一起,这样既稳定而且薪资也比较靠谱。
2、接私活。这个事行业内比较普遍的现象。但是私活最好有自己的团队
3、出售成品代码,自己完成某个独有的功能代码,可以对外出售。
4、自己创业。不过,如果项目方向不好的话,被时代潮流碾压的可能性非常大。

❷ Android程序员,最常用的20%技术有哪些

Java基础部分,面向对象,类集,IO
Android 4大组件的用法
Android自带的一些view必须要会
弹窗:Toast/Dialog/WindowsManager
动画:帧/Tween/属性动画
文件存储:file/xml/SharedPreferences/Sqlite
网络通讯:各种库,JSON/XML数据格式,当然也可以HttpURLConnection自己实现
线程/UI线程交互:Handle/AsycTask
eclipse/as 的debug技能
进阶部分:
多进程通讯IPC/aidl
自定义View实现
Touch事件分配
图片缓存优化:加载时查找LruCache内存/sd卡/服务器
JNI/NDK
常用设计模式
其他:
代码混淆配置
AndroidStudio Gradle的配置
签名打包

❸ 大家讨论下Android程序员未来十年的发展方向

大家基本上倾向于认为到 2025年时编程仍然有意义,但有人说 2025年以后情况可能就不是这样了。而那些认为编码将死、程序员将失业的人的理由是机器智能会像今天的程序员一样具备自学编程的能力。比如说 AlphaGo击败李世石就是一个机器学习能力的证据。

软件演进然后帮助我们创建出更强大的基础设施进而引领我们走向更高层次的抽象,反过来又让我们做出比今天更复杂的软件,如此周而复始。所以编程始终都是有重要意义的,但是抽象和你试图用代码解决的问题会不断发生快速演变。

❹ 高级程序员如何学习Android开发

一、Java基础,虽然现阶段Google已经将Kotlin定为官方推荐语言,但是大多数国内项目都是用Java开发。即使以后的大趋势是向Kotlin转换,也需要一些时间,所以完全不用担心Java会过时,你可以在Android学的差不多的时候再去学Kotlin,学习成本也会很低。
1. 如果非科班出身建议看视频或者找人指导学习,科班出身可以直接看Java相关书籍,基础好的可以一边了解Android一边学习Java。
2. 对于Java需要掌握到什么程度:
- Java基本数据类型、基本语法、关键字、表达式和分支循环
- 面向对象,封装、多态和继承
- 接口的使用方法和场景
- Java常用的各类型集合的优缺点及使用场景
- JavaI/O
- Java的多线程
- Java的反射机制和泛型
- 一些常用的设计模式(如:单例、工厂等)
掌握了以上Java知识基本可以应对很多开发场景。
二、Android(软硬件部分)
1. 开发平台:电脑用Windows的或者Mac都可以,处理器最好i5及以上,8G内存及以上,配上固态硬盘。(推荐Mac)
2. 开发工具:Eclipse已经很少见到,大多数开发人员都选择AndroidStudio(IntelliJ IDEA也可以,跟AS类似),调试可以用AS自带的模拟器或者第三方模拟器,有条件的请用真机。
3. 开发环境:配好Java环境,正常安装AndroidStudio即可。
三、Android(基础编程部分)
1. 了解项目工程各个目录的作用
2. 学习各类基本布局的使用方法
3. 了解基本控件的使用(如:TextView、ImageView等)
4. Activity和Fragment的生命周期,数据交互方法
5. 列表类控件(如:RecylerView、ListView等)和Adapter的使用方法
6. Activity的启动模式,四大基本组件的作用及使用场景
四、Android(进阶编程部分)
1. 数据库的简单存储(增删改查)
2. Android自带的SharePreferences存储
3. 文件存储的方法
4. Android的消息机制和异步任务
5. 三种动画的使用
6. 了解Http协议相关的知识
7. 触摸事件的分发机制
8. 自定义View

❺ 我是个android程序员,想改行

看到你这些牢骚,很熟悉啊,以前我在外包公司做的时候,也是你一样的心态,天天加班,天天2,3点,早晨7,8点起,比你这加班到凌晨苦多了。
但是现在,我还是做android,只是换了个环境,收入稳定,上班时间,早晨9点,下午5点半,准时下班。你现在这种情况:
1.是你自己能力还相当不足,从你说话就可以看出来,你估计做android还没几天,积累不够,要比能力强的人多花更多的时间去熟悉,去了解对你来说新的东西。
2.跟你的工作环境也有直接关系,一般公司不会这样,除非是处于初级阶段的外包公司,我原来那个就是。
作为一个过来人,给你一些建议,在什么都没学会之前,能力很有限之前,不要先去抱怨,因为你能力不足。程序员相对你想要的那种职业,薪资应该会高很多,那种职业要么是比较酱油的,工资低;要么是家里有后台的,天天可以打酱油,但拿的还不少,你觉得这两种情况,你是前者?那你就是不思进取。如果你是后者,你也不必做这个职业遭罪。最关键的是,一个积极上进的人,不会去抱怨,而是换个角度去考虑问题。你要是能力强,换个环境,想我现在这样的工作时间,很多的。月薪8K-10K,多的是,但是你要有那个能力,能力就是在你现在的这种公司,不停的做项目,积累,用最短的时间积累更多的知识。
如果你是个积极向上的人,我希望今后有机会和你一起探讨和分享android的开发经验;但如果你坚持要换工作,找一份“安逸”的朝九晚五的工作,当我没来过。

❻ Android程序员的较好的职业规划应该是怎样

Android程序员的职业规划,怎么说呢?一句话叫做:早知如此,又何必当初。命运有些是自己可以掌握的,有些可能需要运气和机会。
一、路径可达
先说说路径可达这个词吧?有些人会觉得他的路看不到未来,有些人就可以清晰的看到他的方向。如果你现在所做的工作过两年会不会有所成长,达到你的目标。如果答案是否定的,那么说明现在的工作是没有上升通道的,就需要改变。当然安于现状不思进取是另外一回事。时刻反思自己所走的路,然后迅速调整,可能会少走很多弯路,毕竟时间不可逆。

二、时间规划
我有时候会想我五年后在哪里?做什么?大部分人对于这个都会比较模糊。因为时间跨度太大。五年时间相当于整个生命长河其实比较短,但在职业规划中确是很长的段,特别是刚毕业的那五年。从时间规划来讲肯定会用到时间的切分。宏观的东西只有落地到一件件事上才是有效的,才算得上完整的规划。但是话又说回来人是有惰性的,人对于这种有限制的东西有天然的排斥感,执行起来非常痛苦,即使开始执行起来很有激情,过不了几个月,所有的计划都缩水了,这同时也导致了很多时间的浪费和做事情的盲目性。所以计划的时效性和执行很重要,这里又会涉及一个词:“执行力”。
没有计划也导致学习变成一个一个孤立的点,完全没有串连性。因为你是想到学什么学什么,而不是计划着学,一段时间后可能会有一些积累,但是永远深度不够。这可以做一个简单的实验,把自己脑子里的东西理一理,如果时间需要很长说明整体知识体系已经有些混乱,可以对比一下操作系统的磁盘整理。如果一个人能很好的管理时间那么必成大牛。好学生好在哪里,排除智商的因素外,就是时间管理和善于思考。我觉得我自己最大的问题:时间管理,自律性,沟通能力。这三块是我觉得自己最缺乏一定程度上是致命的,很大程度上会决定我未来的所发展的高度。
三、项目经理还是架构师
在程序员中一直有个讨论就是将来要做项目经理还是做架构师。这两条路的侧重点不一样,所以积累的东西也可能不同。项目经理更强调综合能力,比如说协调能力,沟通能力等一系列偏管理的能力。而架构师可能更专注于技术本身,技术上的宏观方向。两条路有重叠,但是更多的是区别。有些项目经理可能就不会写代码。但是同样可以带好一个项目,一个团队。
我曾经也问自己要是以后这两条路走哪条,其实都可以尝试一下。比如说给一个项目让我带带,我能否把它带好,其实需要机会,同时也需要自己去争取这样的机会。所以我的答案就是如果有机会的话两条路都可以尝试走走,就是两个方向的一些能力都可以进行积累。很多人认为项目经理是一个职位,我倒觉得是动态的,这个项目中你做项目经理,另外一个项目中可能又是开发工程师。所以不永远是项目经理,也不永远是开发工程师。
就程序员而言,专注技术是没有任何问题的,先技术后管理。管理这个东西总的说有点虚无飘渺,各都有各的一套理论,比较难以评估。但是技术是可测量的,通过一定的努力技术水平都会有定的跃升。记得在《肖申克的救赎》里面说到地质的形成只需要两个条件:压力和时间。其实对于学技术也是一样的。只要肯学一定会达到某个水平。到大牛级别的确实需要一些悟性和天分。
四、我的选择
我为什么觉得自己应该走架构师这条路,这和我职业终极目标是契合的。这里先说一下架构师做什么?架构师负责整个项目甚至整个系统的构架(这一句话等于废话)。一般型的项目可能这个设计项目就做掉甚至可能就不需要架构。但是系统复杂度上升的时候,会涉及到系统之间的交互,还有技术的可行性和整个设计的方案。这个时候架构师就出场了。另外的工作就是承担一定的培养新人的工作。所以架构师都需要具备比较好的口才,很多人都说程序员不会说话,错了,那是低端的,到了高端的程序员口才都很好,看一下那些程序员大会中侃侃而谈的架构师们,是不是有种“高端大气上档次”的感觉。这后面会发现有一个发展方向就是“培训师”,还可以写书,其实这些都可能是一些“副产品”。技术到一定的境界很多事情到都是水到渠成。
架构师写代码吗?当然写。他们肯定不会写那些简单的代码,他们一般写什么代码?框架,一般来讲优秀的框架都是一个人或者极少人写出来的。比如说Linux的核心就是一个人写出来的。好的代码绝不是人堆出来的。你给100个初级程序员也整不出一个Struts来。这里会衍生出另外一条路,就是开源框架,很多牛人都是开源社区的爱好者。都或多或少的参与了一些开源项目。甚至把自己写的一些东西开源出来。一般来讲能做到这个级别那是相当厉害的了。

五、领域方向
我记得以前总有人问我你最擅长的领域是什么?这个问题一问我就懵了,因为我从来就没想过这个问题。可能本身还没到分领域的级别,还处于一种“原始积累”阶段。技术学到一定阶段的时候是分领域的。领域之间会有一些交叉。
我所知道的大方向是“高性能,大数据量,移到平台“。这是我给Java这所分的三个方向。其实我上面所说的三个方向不一定是同一个维度。但是我认为写Java的如果没有沾上这三个方向中的一个,一定没有前途。高性能和大数据量的处理需要比较多的技术储备。很多人说写个Java就是CRUD(严格来讲,对于计算机本身所有的操作都是CRUD)。可是在高性能情况下所涉及的问题一下成指数级增长。各种“水平扩展”,“服务化”,“容灾”,”缓存”等各种牛B的词汇就来了,你写一般的CRUD最多也就知道个SSH,这是不一样的。比如说做大数据量的处理一定会知道Hadoop,然后就是云计算,云存储。反正什么牛B什么来。移动平台和上面我所说的维度不一样,因为移动平台相对应的是PC平台。但是由于移动平台的发展时间很短。所以能搭上这趟快车也有不错的发展。要是早些年(2012年以前)进入移动平台的开发,现在同水平的程序员工资肯定更高。这是平台发展所带来的红利。虽然三年前我预见到了移动平台的无可限量,但是那时候就像一个一无所有的人,还管它什么移动平台还是PC平台,能写代码做项目就OK。以至于我学了一个月的Android就偃旗息鼓。
不管怎么样技术的底层都是一样的,所以扎实的基础是必要的,这就是为什么算法和数据结构是永恒不衰的。很多人说算法和数据结构无用那就是无知的表现。这个无知就像在讨论读大学有没有用一样。

六、总结
上面所说的一些东西可能都会比较虚,很多人都可能明白其中的道道,比如说到时间管理,这个估计从学生时代就在讲。但是真正的执行还是千差万别。所以又回归到哪里?回归到人本身。后来我想明白一件事情,即使道理再明白,没有好的执行仍然等于空谈。这里我回想起刘未鹏的《暗时间》。里面非常细致的讲了对于时间的管理。这个我读大学的时候同样在一本书《读大学,究竟读什么》里面也有所论述。当然两个方向是不一样的,一个是程序员的思维,另外一个是文科生的思维。但是道理只有一个,时间利用率的本质是什么。
另外就是实践,强烈的实践。我记得大学的时候读《人性的弱点》真是心潮澎湃,可是过不了多久我就忘了书中的内容。所以没有把书中的一些东西深刻的印记在脑海里并转化成你自己的东西,它永远只是知识。

❼ android程序员面试时要注意什么

谈谈UI中, Padding和Margin有什么区别? widget相对位置的完成在antivity的哪个生命周期阶段实现。 请解释下在单线程模型中Message、Handler、Message Queue、Looper之间的关系。 AIDL的全称是什么?如何工作?能处理哪些类型的数据? 请解释下Android程序运行时权限与文件系统权限的区别。 系统上安装了多种浏览器,能否指定某浏览器访问指定页面? 对多线程的运用和理解,及多线程之间handle的传值。 对android虚拟机的理解,包括内存管理机制垃圾回收机制。 Framework工作方式及原理,Activity是如何生成一个view的,机制是什么。 android本身的一些限制,比如apk包大小限制,读取大文件时的时间限。 如何加载的音乐信息,如何改善其效率。 ListView如何提高其效率? 启动应用后,改变系统语言,应用的语言会改变么? 启动一个程序,可以主界面点击图标进入,也可以从一个程序中跳转过去,二者有什么区别? Android程序与Java程序的区别? Android中Task任务栈的分配。 在Android中,怎么节省内存的使用,怎么主动回收内存? 不同工程中的方法是否可以相互调用? 在Android中是如何实现判断区分通话记录中的电话状态,去电,来电、未接来电? dvm的进程和Linux的进程, 应用程序的进程是否为同一个概念 sim卡的EF 文件有何作用 如何判断是否有SD卡? 嵌入式操作系统内存管理有哪几种, 各有何特性。 什么是嵌入式实时操作系统, Android 操作系统属于实时操作系统吗? 一条最长的短信息约占多少byte? Linux中跨进程通信的几种方式 。 谈谈对Android NDK的理解。 谈谈Android的优点和不足之处。 Android系统中GC什么情况下会出现内存泄露呢? Android UI中的View如何刷新。 简单描述下Android 数字签名。 什么是ANR 如何避免它? android中的动画有哪几类,它们的特点和区别是什么? handler机制的原理。 android中线程与线程,进程与进程之间如何通信。 说说mvc模式的原理,它在android中的运用。 android中有哪几种解析xml的类,官方推荐哪种?以及它们的原理和区别。 DDMS与TraceView的区别? res目录有默认几项resource。 android的哪个版本是一次重大的升级? 两个Activity之间跳转时必然会执行的是哪几个方法。 横竖屏切换时候Activity的生命周期。 如何将一个Activity设置成窗口的样式。 你后台的Activity被系统 回收怎么办? 如何退出Activity?如何安全退出已调用多个Activity的Application? 如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态? 两个Activity之间怎么传递数据? 怎么让在启动一个Activity是就启动一个service? 同一个程序,但不同的Activity是否可以放在不同的Task任务栈中? Activity怎么和service绑定,怎么在activity中启动自己对应的service? 什么是Service以及描述下它的生命周期。 Service有哪些启动方法,有什么区别,怎样停用Service? 不用service,B页面为音乐播放,从A跳转到B,再返回,如何使音乐继续播放? 什么是IntentService?有何优点? 什么时候使用Service? 请描述一下Intent 和 Intent Filter。 Intent传递数据时,可以传递哪些类型数据? 说说Activity,Intent,Service是什么关系 。 请描述一下Broadcast Receiver。 在manifest和代码中如何注册和使 用 broadcast receiver 。 请介绍下ContentProvider是如何实现数据共享的。 请介绍下Android的数据存储方式。 SharedPreferences:用来存储”key-value paires“格式的数据,它是一个轻量级的键值存储机制,只可以存储基本数据类型。 文件存储:通过FileInputStream和FileOutputStream对文件进行操作。在Android中,文件是一个应用程序私有的,一个应用无法读写其他应用程序的文件。

❽ 程序员编写android应用程序时,主要调用什么层提供的接口实现

Framwork层,框架层提供了android开发需要的api和常用类库。应用层基于框架层。

❾ android程序员面试时要注意什么

第一个问题就是“不求甚解”。
何为不求甚解?其大多数的问题就是在于大量的使用第三方的jar包,问他个原理一点也答不上来,甚至是最基础的。举个例子说明,比如我问他json数据怎么解析,都知道哪些解析器,直接不知道,因为现在的开发者都直接去使用GJSON,从来不去了解解析的整个过程和原理,更不会写。虽然用google提供的工具可以轻松实现,但是原理和过程还是得要学习的。学了总会有用,现在第三方的jar包多的是,封装的也都比较好,不是不能用,但是一定要学习原理和机制,这样才能提高自己,举一反三,如果只会用第三方,只会粘贴复制,你还仅仅处在码畜的级别,甚至有可能还不如。这个问题你犯了吗?记得要对号入座哦!
第二个问题就是不思进取,或者说叫技术落后。
怎么说呢,技术是不断在进步的,不断的在革新,尤其是我们程序员这个行业。很多程序猿一旦学习完了,工作了,虽然用旧的知识和技术也能实现这种效果,但是从不会考虑效率,不去学习新的技术,明明有更好的控件提供了,也不知道,或者知道并不去学习,还停留在以前的知识,面试时要的工资还挺高。再举个例子,面试时,问他们ListView的复用,大家答的都挺好的,都非常明白,我再问一句:Android5.0提供了新的控件替代了它,你们知道吗?用过吗?就全都哑火了。我都不知道该说什么好?程序猿之所以累,之所以叫猿就是因为他要时时刻刻保持一颗活到老学到老的心,要利用最新的技术知识解决新的难题。
讲到这里,两个问题已经讲完了,不知道你自己是否也有这样的毛病呢?请记得对号入座哦。现在我们再说一说面试者的另一方面的事,那就是简历的书写。

我相信大家写面试简历肯定都有夸大的成分,都会吹牛,这不要紧,牛吹好了,工资自然高,但是别吹过头,面试的时候我看到面试者的简历时,给我的感觉是:我靠,好屌,好厉害啊!这时一个情不自禁的想法就来了,我要问问他这方面的知识。比如:一个面试应用层开发的,非把自己底层开发也写的很牛逼,你真的像你简历上写的那样“精通”吗?面试者把简历写的每个技术知识点都是精通与熟练,有时候,反而是搬起石头砸了自己的脚,吹牛可以,夸大也可以,都是为了生存吗?但是要适可而止,要在自己掌握的一个度里,这样既能自己面试的漂亮和顺利,给面试官也有好的印象,这样的情况不招你,招谁啊?

阅读全文

与程序员android相关的资料

热点内容
蚊帐自营米加密 浏览:418
学校推荐核桃编程 浏览:801
湖南农信app怎么导明细 浏览:471
福特abs编程 浏览:506
如何自学安卓手机 浏览:437
以太坊源码共识机制 浏览:909
单片机探测器 浏览:869
demo编程大赛作品怎么运行 浏览:50
学历提升用什么手机软件App 浏览:938
apk反编译弊端 浏览:451
编译器内联 浏览:910
圆形相框是什么app 浏览:479
安卓微信如何设置文字加长 浏览:764
中科编译科技公司高新技术企业 浏览:770
win7文件夹选项功能 浏览:90
微信文件夹为什么会被锁定 浏览:994
加密系列号 浏览:459
电冰箱换压缩机要注意什么 浏览:796
平板的访客模式如何加密 浏览:139
钉钉加密有用吗 浏览:112