"技术框架太多,多的眼花缭乱,如何在众多选择中找到自己的方向?",经常有人这么问我。

咱们从开源项目说起,可以从两个维度来对开源项目进行分类,一方面是编程语言,另一方面是应用领域。

首先说编程语言,像Java、C#、PHP、C/C++、Ruby、 Python、Go、JS、SCALA等等,有非常多的编程语言。很多人说编程语言很简单,会一种其他都会了,也有很多人说编程语言很难,很难精通一门, 更不用说很多门了。那到底是什么情况呢?事实上,我们不应该拘泥于具体的语言来看这个问题,我们可以从编程范式来看这个问题,根据编程范式的不同,编程语 言一般分为面向过程(命令)的编程语言、面向对象的编程语言、函数式编程语言、人工智能编程语言、领域特定编程语言等。作为一个专业的程序员,我们应该实 践这些不同的编程范式,通过写代码来比较不同范式的语言之间的异同,从而对编程语言有个宏观的理解。更重要的是,我们应该选择一门语言来深耕,深入地学习 该语言的高级特性、优化技巧、内部原理、语言实现、平台规范、框架类库等等这些东西,学好这些东西,就像修炼内功一样重要。

其次是应用领域,每一个开源项目都有自己的应用领域,小到论坛、网站、CMS,大 到数据库、操作系统、分布式计算与存储等等。应用领域很多时候是编程语言无关的,比如说数据库你可以用JAVA实现也可以用C/C++实现,比如说中文分 词,你几乎可以用所有的编程语言来实现。

通过上面的分析我们可以知道:作为新手,你首先要选择一门语言如JAVA在工作中使用,你要把它使得炉火纯青,因为你要靠这个工具吃饭,你要靠这个工具去做很多的应用领域的研究及开发;其次,你应该去学习其他不同范式的编程语言,开阔自己的视野。

最后总结一下,"技术框架太多,多的眼花缭乱,如何在众多选择中找到自己的方向?"呢?幸运的是,技术框架虽然多,但是我们可以根据编程语言和应用领域对其进行分类,分类之后,根据自己的能力和兴趣选择相应语言之下的相应领域即可。

"技术框架太多,多的眼花缭乱,如何在众多选择中找到自己的方向?的更多相关文章

  1. App技术框架

    一.App技术框架的类型 图1 三种App技术框架之间的关系 目前App的技术框架基本分为三种(图1): (1)Native App:互动型,iOS.Android.WP各一套,而且要维护历史版本,要 ...

  2. 你得知道这3个最基础的APP技术框架

    出处:优设网作者:信籽链接:http://www.uisdc.com/3-basic-app-technical-framework 信籽(手淘设计师):不知道大家有没有遇到过这种情景,当你做好一个设 ...

  3. 3.Python编程语言基础技术框架

    3.Python编程语言基础技术框架 3.1查看数据项数据类型 type(name) 3.2查看数据项数据id id(name) 3.3对象引用 备注Python将所有数据存为内存对象 Python中 ...

  4. Android常用的技术框架与博客社区

    技术框架 图片加载 Glide Fresco Volley Picasso Universal Image Loader 网络请求 okhttp retrofit Volley android-asy ...

  5. VSLAM技术框架详述

    最早的SLAM雏形是在军事(核潜艇的海底定位)上的应用,主要传感器是军用雷达.SLAM技术发展到如今已经几十年,目前以激光雷达作为主传感器的SLAM技术比较稳定.可靠,仍然是主流的技术方案.但随着最近 ...

  6. J2EE 领域的一些技术框架结构图

    J2EE 领域的一些技术框架结构图       阿里百川,开启移动应用开发的新篇章 1.Spring 架构图 Spring 是一个开源 框架,是为了解决企业应用程序开发复杂性而创建的.框架的主要优势之 ...

  7. java中异常这种技术框架是怎么工作的?

    异常这种技术框架是怎么工作的?马克-to-win:注意是运行程序时,而不是编译时,当一个非正常情况出现,比如除0,就叫异常情况.马克-to- win:为了能优雅的处理异常情况(在出现异常情况后,程序不 ...

  8. “造轮运动”之 ORM框架系列(一)~谈谈我在实际业务中的增删改查

    想想毕业已经快一年了,也就是大约两年以前,怀着满腔的热血正式跨入程序员的世界,那时候的自己想象着所热爱的技术生涯会是多么的丰富多彩,每天可以与大佬们坐在一起讨论解决各种牛逼的技术问题,喝着咖啡,翘着二 ...

  9. 集合框架的类和接口均在java.util包中。 任何对象加入集合类后,自动转变为Object类型,所以在取出的时候,需要进行强制类型转换。

    集合框架的类和接口均在java.util包中. 任何对象加入集合类后,自动转变为Object类型,所以在取出的时候,需要进行强制类型转换.

随机推荐

  1. hackerrank---List Comprehensions

    题目链接 刷刷Python基本功...列表解析 附上代码: x = int(input()) y = int(input()) z = int(input()) n = int(input()) pr ...

  2. Python学习之路11☞异常处理

    一 错误和异常 part1:程序中难免出现错误,而错误分成两种 1.语法错误(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正) #语法错误示范一 if #语法错误示范二 de ...

  3. 2019-10-21-WPF-多个-StylusPlugIn-的事件触发顺序

    title author date CreateTime categories WPF 多个 StylusPlugIn 的事件触发顺序 lindexi 2019-10-21 08:33:15 +080 ...

  4. OSS跨同城3AZ重磅发布,构造全面数据保护体系

    点击订阅新品发布会! 新产品.新版本.新技术.新功能.价格调整,评论在下方,下期更新!关注更多内容,了解更多 最新发布 OSS跨同城3AZ重磅发布 2019年7月3日15时,OSS跨同城3AZ重磅发布 ...

  5. P2P四红线

    P2P四红线 刘张君指出,P2P网络借贷平台是一种新兴金融业态,在鼓励其创新发展的同时,要记住四点:一是要明确这个平台的中介性质,二是要明确平台本身不得提供担保,三是不得将归集资金搞资金池,四是不得非 ...

  6. 是readdir,还是readdir_r

    readdir的原型如下: struct dirent *readdir(DIR *dirp); 因为内部使用了静态数据,所以readdir被认为不是线程安全的函数,POSIX[i]标准这样描述: T ...

  7. 当flex遇到white-space: nowrap; 排版就飞了的神奇问题 吐血

    在做一个移动端排班的时候需要某一行的字超出的部分用省略号代替  然后写着发现后面排版乱了 HTML结构如下  我想让第二个span的内容加省略号 css正确的代码如下 .list { width: 1 ...

  8. uva 11375 Matches (递推)

    http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&p ...

  9. CREATE OR REPLACE FUNCTION

    CREATE OR REPLACE FUNCTION SF_Taishou_Ksai_Date(v_receiptNum IN CHAR,                                ...

  10. 详解TableStore模糊查询——以订单场景为例

    背景 订单系统在各行各业中广泛应用,为消费者.商家后台.促销系统等第三方提供用户.产品.订单等多维度的管理和查询服务.为了挖掘出海量订单数据的潜能,丰富高效的查询必不可少.然而很多时候并不能给出完整准 ...