如何快速的学习任何一门编程语言

15 篇文章 0 订阅

学习任何一门编程语言,都可以分成三个步骤。

第一步,通过书和视频课掌握基本语法。掌握编程语言基本语法的途径比较多,如书、视频课、线下课等,可以结合自己的实际 情况进行选择。笔者总结了学习编程语言必须掌握的10 个要点。

1)学习编程语言的基础知识。编程语言的基础知识包括基本数据类型、基本语法和流程控制(判断、分支、循环 等)、主要数学运算符、打印输出函数的使用。

2)掌握数组和其他集合类的使用。数组和其他集合类的使用包括了解数据的类型和特性,能否为空,集合是否线程安全, 主健是否重复。

3)简单字符串处理。所谓简单,就是Regex 和Parser 的内容,查找替换、截取字符串等,另外要注意字符 编码问题。

4)掌握基本面向对象或函数式编程的特征。对继承、多态、Lambda 函数等,概念要吃透,掌握用法。

5)掌握代码调试的技能。代码调试的技能包括异常、错误处理,断言、日志和调试等。

6)了解程序代码和可执行代码。了解程序代码和可执行代码,包括组织机制、运行时模块加载、符号查找机制。例如, Java 的JVM 原理和调优,结合编译原理理解Java 和PHP 等编译、运行的异同。

7)掌握基本输入输出和文件处理、输入输出流类等。例如,Java 编程中文件读写的常用类和方法,如何防止读取量太多“撑爆”内存,以及读 写的效率问题等。

8)掌握编程语言如何进行callback 方法调用,如何支持事件驱动编程模型。在现代编程环境下,这个问题是涉及开发思想的核心问题,几乎每种语言在这里都会下 足功夫,如.NET 的delegate、Java 的anonymous inner class、Java 7的closure 和C++ OX 的 tr1::function/bind 等,要深入掌握其设计模式的运用。

9)序列化和反序列化

10)掌握一些编程语言特性。掌握动态编程、反射和元数据编程、数据和程序之间的相互转化机制、运行时编译和执 行的机制。以上就是学习编程语言需要掌握的基础知识,在啃书本、掌握原理的基础上,要动手做 一些Demo,掌握基本语法。

第二步,通过调试简单项目掌握开发框架的用法。

这个方法是根据笔者的个人经验总结出来的,笔者在刚参加工作的时候,虽然已经看了 不少编程书籍,也跟着书中的案例写了一些代码,但在实际工作中总感觉力不从心,现 在回想起来就是因为缺乏项目经验。恰好当时的主管要求搭建一个内网门户,内网门户 里要有BBS、Wiki、聊天室、会员中心、下载中心等十多个子系统,笔者当时的思路就 是去网上下载多套系统进行整合。经过两个多月,十多个系统的整合、搭建、数据打通,不懂的地方问Google、问同事, 笔者的项目经验得到了快速的积累,常见的系统架构方式都能说出个所以然,笔者至今 仍非常庆幸,那段工作经历大大拓宽了我的技术视野。对于刚开始学习编程的同学来说,从0 开始搭建一个系统是比较困难的,一个快速提高 编程能力的方法就是从GitHub 上下载一些简单的项目,在本地计算机上“跑”起来,这些 项目一般都会有“step by step”的说明,教你如何搭建开发运行环境,让Demo 能够运 行在自己的计算机上,然后试着在这个项目中改变布局、增加字段、调试,把代码通读 一遍,不明白的地方可以问Google或有经验的同学。通过调试几个项目可以掌握开发框架的基本用法,对语法、开始框架、中间件、数据库 的使用方法有基本的认识。

第三步,从0 开始做一个项目,提高编程综合能力。

工程师的本质是什么呢?用工程的方法解决实际问题,所以我们非常强调动手能力。曾 经读过一个故事,一位华人理工科教授Li 去他的朋友Dived 家做客,Dived 是硅谷的技 术高管,为了照顾Li 的口味,Dived 准备了中餐,当饭菜准备好,大家围着桌子坐下 后,发现少了一副筷子,由于不常吃中餐,Dived家里没备那么多筷子。这时,Dived 站了起来说:“稍等一会。”大约过了10分钟,Dived 带回一副崭新的筷子,原来他用家 里的木头材料动手制作了一副筷子。Li 非常惊讶和感慨,虽然Dived 身为技术高管,较 少做一线的技术工作,但是血液里流淌着的是工程师精神。这个故事告诉我们,作为工程师,动手解决问题的精神是我们的“底层操作系统”,好的 工程师必须具备工匠精神。编程的技巧全在细节,不从0 开始做一个项目,就无法体会每一个技术点的运用。从0 开始做一个项目,便于形成自己的工具箱。从开发效率来说,优秀程序员和普通程序员 的差别就在于工具箱使用得熟练与否,当然还有算法、设计模式、代码结构等。

以Java 开发为例,需要整合Spring Boot、Dubbo、MyBatis、ZooKeeper、Redis 等,还需要熟悉数据库、缓存的用法、Linux 系统的安装和使用、数据库的安装和使 用、数据库表的设计、数据模型的设计等。经过以上三个步骤,就可以成为一名工业级编程水平的初级开发工程师了。如果想要进 一步提高,就需要下苦功夫,深入掌握编译原理、架构背后的设计理念、算法、优秀项 目的源码等。

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Saidywin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值