`
流川枫
  • 浏览: 6540 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

[Android&分享]Android学习工作总结

阅读更多
本文转自http://www.cnblogs.com/carlosk

零零碎碎的总结

    1.客户端的功能逻辑不难,UI界面也不难,但写UI花的时间是写功能逻辑的两倍.
    2.写代码前的思考过程非常重要,即使在简单的功能,也需要在本子上把该功能的运行过程写出来.
     3.要有自己的知识库,可以是一个工具类,把写过的,看过的好的代码放进去,也可以是一个笔记本软件.因为只有放在知识库里的东西,才是你最重要的财富.
     4.如果你想做自由职业者,你需要学英语,因为在国外的盈利比国内多很多.如果你想进大公司,好公司,你需要学英语.你想深入学习 android,但中文的android文章太少了,你查查百度,到处都是copy来copy去的hellword,所以,你需要学英语.如果你想出国, 你需要学英语.
     5.Http协议要研究透彻.http的信息头有什么信息,分别代表什么,信息体有什么信息,代表什么,都要搞的明明白白.scoket也是一样.
     6.在eclipse里的layout文件都有graphical Layout.通过这个好好的把UI调整好.
     7.Android里的junit每次运行都会打包新的apk到设备上跑.效率非常慢.如果是跟android无关的测试,最好自己建立一个单纯的java项目做测试.
     8.面试的时候不要觉得自己提的薪水太高,物以稀为贵明白吗?不管你的期望薪资多少,都有可能实现,这只是时间问题.
     9.如果一家小公司通过猎头找到你,即使公司在小,也比外面那些40,50人的公司还要好.不要觉得公司不行,担心会倒闭.放心吧,至少活1年是没问题的.
     10.不要把自己绑在android上,有空也研究下IOS(最近小弟就准备研究ios,刚买了6本书...).
     11.移动互联网最少还有10年的快速增长.android最少还有两年的快速增长.走android这条路是不会错的.
     12.有空多学点开放平台的SDK.比如新浪微博,腾讯微博,淘宝平台,支付宝移动支付平台,快钱移动支付平台等等..这些都是不愁没市场的.
     13.即使技术再差,也要发布一个应用到market上去.因为这样你才了解做一个应用的逻辑.
     14.每个月拿到薪水省500-1000元出来.这些钱投在买学习资料,去培训班上课...在培训班,花再多的钱也是值得的.
     15.你真正的价值在项目经验和对底层的认识上.不要忽略基础知识.
     16.如果有空把Android的源代码看一下.底层的东西很枯燥,但这些很值得学.
     17..程序员其实是艺术家.代码重构和设计模式,是非常非常重要的东西,必须要学
     18.不要去维护一个项目,要去做一个项目.
     19.一开始不要轻易去大公司,虽然大公司是可以让你呆一辈子的.但你的起点低,以后成就也低.
     20:每天早上提前20分钟上班,5分钟把今天的工作计划写好.15分钟用来看各大It论坛的新闻.
     21:如果以前没做过java,那就把SSH看下,自己搭建一个小服务器.这是为了接私活用.
     22:PS一定要学,接私活用.
     23:多下载市面上好的应用,每天都用,只有这样你才能了解市场.现在所有的APK都可以反编译,看源代码麻烦,但看layout和图片很容易,所以....你懂的.
     24.要有羞耻心.
     25.老板仅仅要求你把东西做完,需求完成.但你必须对自己要更严格一点.写一段代码,从网上复制一份代码,并不是可以用就行了,你还必须明白他的原理,为什么这样就可以?这才是对你最有用的地方,这也是你今后薪资增长的保证.
     26.要懂得舍得.移动领域发展太快,必要时必须要用钱换时间.不然你会远远落后别人(我之前花了4000大洋去培训班学IOS三天).
     27.要明白自己想要什么,什么才能最大性价比提高你的能力.对我来说,能让我提高最大的,就是Android和IOS同时会,并且自己可以做架构设计.
    28.看android技术书籍最快的学习方法,先通读一次.然后把书本上的demo一个一个写出来.不要觉得太容易不去写.很多东西都是这样,看起来简单,但做起来难.最后再对照自己写出来的程序代码去理解书本的意思.
    29.应用和游戏是2个方向,没有一个公司会同时做游戏又做应用,即使是外包公司,大多也只做一块.专精一个就可以了.
    30.每次做完一个项目,要强迫自己做总结,通过这个项目,我学到了什么新技术?犯了哪些SB错误?
    31.去中小公司面试的时候,要问两个问题,第一有没有财务部,如果有正式财务部,那肯定是正规的,不要担心欠薪问题.如果没有,就说不准了.第二,有没有测试人员,如果没有说明不规范.对项目来说,测试人员是非常重要的,是项目质量的保证.
    32.大家拿到offer后都希望能看看是否还有更好的机会,这没错,但是要注意offer的有效期.一般中小公司的耐心只有一周.
    33.自学的效率总是低于做项目的学习效率.这是因为没有驱动.所以如果工作很闲,那自己就去接私活,或者自己做一个应用发布出去.利益的驱动会让你进步更快.
    34.Android的api涉及到很多方面.很多知识只要不用,不复习就会慢慢消失.所以每隔一段时间的总结和复习是非常必要的.建议每个月必须进行一次不短与1小时的复习.
    35.如果2-3年以后你还是一线程序员,那对你来说最重要的不是技术的提高,而是身体健康的提高.建议工作2年后,有点余钱要投到健身上.
    36.人的关注力总是会起伏不定.一个项目,或者一个学习目标,在坚持一段时间以后总是会松懈,偷懒.避免这种情况的最好的办法,就是隔一段时间内做总结.比如三天,或一周.
    37.主要有1年以上的工作经验,大家都可以成为架构师.即使是小型的移动app,如果事先写好简单的架构设计,会让你轻松很多.这种效率等同于我之前所说的"写代码前思考过程很重要".
    38.要养成正规的编码习惯,如果公司没有编码规范,那最好写一个自己用的Android编码规范.
    39.代码复用和重构是非常必要的习惯.但这只是针对非业务逻辑,如果是业务逻辑,那就尽量少复用.
    40.周末没事就去参加一些免费的沙龙,讲座,一来拓展下知识面,二来认识更多的人,程序员每天一直呆在公司,仅仅透过网络你无法深刻感触外在世界的变化.顺便说一下,貌似很多老板都是在这里找到优秀员工的.你所要付出的仅仅是路费.
    41.每两个月啃掉一本书并不是很难的事情.
    42.如果工作很轻松很闲,那你要加紧把握现在这个机会.每天给你钱让自己去学习的机会很少很少.
    43.如果把程序员比做工地建筑工人,技术领头人比作包工头,架构师比作建筑师.那么当你写代码前不做任何思考的时候,那你就是建筑工 人.当你有意识的把代码规范,设计模式这些东西运用到项目中,并严格遵守游戏规则,那你就是包工头.当你开始制定游戏规则,开始考虑到产品使用者,产品生 产者等各种涉众的利益的时候,那你就是建筑师.
    45.人的信心是非常强大的力量.自不量力的人比量力而行的人成就更高.
    46.代码是否优美,是否整洁是难定义的.我的一个简单的量化标准是,一个类代码在600行以下就可以了.
    47.你要有这样的觉悟,项目出了任何问题,都是你的责任!没判断null?那是你的错.图片切错了?那是你的错,产品上线不了?那是你的问题,产品销售不给力?那是你的问题.你必须学会要用一种积极向上的思维方式来看待这个世界.任何问题,都是你的错.
    48.很多人都说程序员聪明,其实我们自己知道,我们只是单线程生物,我们习惯把复杂的事情拆分成许许多多零碎简单的任务,然后再一个一个处理.
    49.多个项目同时进行的时候,你必须要有一套自己的时间管理(可以写在本子上,写在日记里),同时最重要的就是控制好你的情绪,只有这样,你才能在你预期时间内完成任务.
    50.尽可能的早起,让你有一段不受打扰的珍贵时间.
    51.你可以抱怨工作中用的技术太杂太陈旧,但不能消极对待.在任何项目中你都可以学到东西,就看你是否主动.
     52.不管你今后的方向是技术还是产品,工作中你都要站在客户的角度上编写代码.你刚掌握或了解到的新技术,并不是马上用到工作中.
     53.任何你花费3天还是没有头绪的问题,你都要放弃目前的思路.
     54.掌握更多的语言是非常非常好的想法.每种编程语言都有自己的独特之处(除了语法,更多体现在设计模式上),只要你掌握了你就可以运用在任何地方.
     55.本人一开始是做J2ee的,然后转android,接着又学了ios,再然后又开始学了PHP。我觉得技术上分两种。1种专精 一门,然后多看看别的语言,取其精华,丰富自己。第2种多攻多种语言,通过不同语言的领悟让自己能在每个领域里逐步提高。这两种路应该都是没有错的。第一 种以后可以在大公司里获得非常不错的职位和薪水,随着工作时间的增加,待遇上也会有很大的提升,以后可以成为该领域的权威人物。第二种可以在小公司里或创 业公司里成为技术Leader,也有可能在大公司里负责一个技术部门(可能性非常小)。我不知道有多少人在这个问题上迷茫过,但我确实是迷茫了很久。我现 在的结论里,要不精到底,要不杂到底。只要坚持下来,不要经常变来变去,总是会得到自己想要的的。
    56.我发现很多入门级的Android程序员或IOS程序员,因为现在移动开发的火热,薪资上比其他领域的程序员高很多,但事实上 技术上却贫乏很多,这是目前的一个怪圈。因为之前没做过其他开发,或刚毕业就开始做移动开发了,非常缺少架构,代码规范等方面的知识。我建议 Android的程序员可以多看看J2ee方面的知识,特别是SSH框架,会给你在思路上带来非常大的提升。
    57.学习最快的方法就是读文档,读官方代码,读别人的项目。有人可能问我手头上没有什么项目源代码怎办?答案是淘宝,在淘宝上你可以花几块钱或几十块钱就可以买到大量的代码,这是目前我认为性价比最高的学习方法。
    58.如果有空可以参与到一些开源项目的研发中。如何参与可以百度下。不要以为开源项目很难,大部分跟我们的区别只是代码非常规范而已。
    59.做开发最有意思的就是每天都可以学到新东西,保持学习的状态会让你每天都很亢奋。培养自己不断学习的习惯。
    60.多培养自己业余兴趣,比如下棋,听歌,旅游等等,通过这些会让你平时工作和学习更有效率。
    61.不要羡慕别人的技术或能力,这世界没有谁比谁更聪明,只有谁比谁更有效率的努力而已。以绝大数人的努力程度之低,根本谈不上拼天赋。
    62..如何衡量一个程序员的技术水平?如果把程序员当成某个游戏里的角色。你的级别代表着你真正的技术水平。你每次的学习和工作相当于你在打怪做任务 获取经验值。有些人群刷比自己高2,3级的怪,有些人单挑比自己高2-3级的怪,有些人刷比自己低5级的灰色怪。也许大家花的时间都差不多,但最后级别是 不一样。所以不要以为工作经验高的人技术肯定比自己强,还有效率问题。反过来说,如果你现在打怪效率不高,是否应该思考换个方式刷经验?(有兴趣的同学可 以看看《一万小时天才理论》)
    63.强迫自己总结经验并写下来。每次写总结就相当于重新复习一次,并且也做一个存档,方便日后回顾。千万不要相信大脑随着时间变得模糊的记忆,只有写下来的东西,才是唯一答案。
    64.定一个高不可攀的目标会让你进步更快。比如研究android源代码,研究linux源代码,把公司里某个大神的代码全部吃透等等。也许目标并不 能完成,但比没有目标好。有个故事是这样的:A同学和B同学考试都得了50分。A下定决心下个月考100分,B只希望考到60分就足够了。最后A考了90 分,B考58分。
    65.不要给自己的懒惰找理由。达芬奇除了是画家,他还是雕刻家、建筑师、音乐家、数学家、工程师、发明家、解剖学家、地质学家、制图师,植物学家和作家。而他只活了68岁。
    66.只专精一种语言的人在未来肯定会成为多余的人。在时间管理里有句话叫:“离开舒适区”。只有离开了舒适区你才会因对环境的不适应而强迫自己更专心学习。
    67.迫使自己不停的获得社会的认可。我从开始转行做程序员到现在,所经历过的目标有:1)写出hello world。2)加入一家公司,成为一名Java程序员。3)成为一名合格的Android程序员  4)薪资加倍  5)成为项目技术领头人  6)薪资加倍。下个计划:准备出书。
    68.有人说30岁以后不能做程序员。我不太同意这个观点。30岁以后确实不能做一名纯粹的一线程序员,因为你有家庭负担,对一个公司来说你的性价比比 不上其他年轻的一线程序员。但30岁以后你可以作为技术领头人或架构师或项目主管存在。还有很多职业都需要很大比重技术的人才。所以不要担心。
分享到:
评论

相关推荐

    Android&IOS 蓝牙BLE 4.0 Demo

    总结来说,"Android&IOS 蓝牙BLE 4.0 Demo"是一个强大的工具,旨在帮助开发者轻松地在Android和iOS平台上实现BLE 4.0功能。通过BCSphere开源项目,开发者不仅可以学习到BLE 4.0的相关知识,还能掌握跨平台开发技巧,...

    android一周学习总结.doc

    【Android学习一周总结】 在这一周的学习中,我们深入探讨了Android开发的基础知识,涵盖了从安装开发环境到理解Android核心概念的多个方面。以下是详细的学习内容: ### 周一:安装开发环境与apk开发流程 1. **...

    学习Android总结

    ### 学习Android总结 #### 一、初步接触与学习路径 在初步接触Android时,首先感受到的是其独特的魅力和实用性。与Web开发相比,Android界面设计不仅具有丰富的视觉效果,而且在架构上也十分相似,这使得具备一定...

    Android知识系统总结

    Android知识系统总结是一个涵盖广泛的主题,它涉及到Android操作系统的核心概念、开发环境的搭建、应用程序的结构、用户界面设计、数据存储、网络通信、多线程处理、性能优化等多个方面。以下是对这些关键知识点的...

    开发android总结文档

    深入理解其工作原理和使用方法,可以从官方文档或第三方博客中学习。 总的来说,Android 开发需要不断学习和适应新技术,如`Lambda`表达式的使用,以保持与时俱进。同时,选择合适的框架和工具,如`Retrofit`和`...

    Android工作总结

    ### Android工作总结——OpenGL ES贴图显示与内存管理 #### OpenGL ES贴图无法显示问题解析 在Android开发过程中,使用OpenGL ES进行图形渲染是一项常见的任务。然而,在实际开发中经常会遇到贴图无法正常显示的...

    android腾讯微博分享demo

    总结来说,"android腾讯微博分享demo"是一个实用的教程,它涵盖了在Android应用中集成腾讯微博分享功能的关键步骤,包括SDK集成、权限配置、授权处理、内容分享以及用户交互。对于想要学习这方面的开发者来说,这是...

    android总结

    android handler总结,总结handler的工作机制,以及和looper的区别

    android framework 经验总结

    这篇“Android Framework经验总结”将深入探讨这一关键领域的核心概念、主要组件以及常见开发实践。 1. **Android架构概述**: Android系统分为四个主要层次:Linux内核、系统库、Android运行时(ART)以及应用...

    Android-SharePanel显示分享按钮面板

    总结来说,`SharePanel`是Android应用中实现分享功能的关键组件。它涉及到`Intent`、`IntentFilter`、权限管理等多个知识点。理解并熟练掌握这些知识点,对于开发高质量的Android应用至关重要。通过合理的实现和优化...

    基于Android平台的记事本软件(Android Studio项目+报告+app文件)

    总的来说,基于Android平台的记事本软件开发是一个综合性的学习项目,涵盖了Android应用开发的基础知识,如UI设计、数据库操作、活动管理和数据传递等,对于提升Android开发技能具有重要意义。通过这个项目,学生...

    android一步一步最基础学习__android新手

    根据给定的文件信息,以下是从标题、描述、标签及部分内容中提炼出的关于Android基础知识...通过上述知识点的学习,初学者可以全面掌握Android开发的基础理论与实践技能,为进一步深入Android应用开发打下坚实的基础。

    Android菜单定制总结

    深入研究Android源码可以帮助开发者更好地理解菜单的工作原理。例如,`Menu`接口和`MenuItem`类的实现,以及`ActionBar`如何处理菜单的显示和事件。 8. **工具支持** Android Studio提供了强大的设计工具,可以在...

    androidmk 转换Android.bp工具方法

    总结来说,虽然从`Android.mk`转换到`Android.bp`可能需要一些工作,但长期来看,`Android.bp`的诸多优势使得这一转变变得值得。使用`mm-to-bp`工具可以简化转换过程,但务必记住,工具只能做初步转换,后续还需要...

    我的android学习心得

    我将分享我的Android学习心得,希望能为你提供一些启示和帮助。在这个过程中,理解和掌握基础知识是至关重要的,因为它们构成了Android开发的基石。 首先,从基础开始,我们需要了解Java语言。Android主要基于Java...

    Android SDK (SDK Platforms)-android-29.zip

    总结,Android SDK (SDK Platforms) - android-29是Android开发的重要资源,它包含了一系列新功能和改进,提升了系统性能和用户隐私。开发者应深入了解这个版本,以便充分利用其提供的新特性和工具,为用户提供更...

    基于Android的“作息学习提醒助手”APP的开发.pdf

    本文主要介绍基于Android的“作息学习提醒助手”APP的开发,旨在帮助用户养成良好的作息习惯,提高学习和工作效率。该APP的开发采用Java编程语言,Eclipse+Android ADT环境下进行软件开发,数据库采用Android平台...

    高通平台android开发总结

    2. System Server与Android Framework:理解System Server的工作原理,如进程管理、资源调度、服务管理等,以及如何根据高通平台特性优化这些服务,是提升系统性能的关键。 3. 应用层开发:在高通平台上,开发者...

Global site tag (gtag.js) - Google Analytics