了解优势特性
该语言属于什么编程语言
当前要学习的编程语言
- 汇编语言还是高级语言,除了C有汇编语言的特性外,其他大部分语言都是高级语言
- 面向对象还是面向过程,除了C是面向过程的语言,其余基本都是面向对象
- 解释性语言还是编译性语言,C/C++/Pascal/Delphi这些语言都是直接编译的,而Java/Javascript/Python/C#/VB/Perl/Ruby等语言都是在先解释再运行,属于解释性语言
了解这一点的目的在于方便认识其优劣势和应用场景,比如编译型语言少了解释的步骤,大都效率很高,因而常被用于大型系统如操作系统、数据库系统等。
该语言有何优势和劣势
主要可以从这几点考量其优劣势:
- 性能效率
- 开发难度
- 语法简洁
- 内存机制
- 是否跨平台
- 其他独有特性
如C/C++的最大优势是执行效率高,劣势是内存管理麻烦,python的最大优势是语法简洁、第三方库丰富、开发效率高,劣势是执行效率低等。
了解应用场景
该语言主要用来做什么
如常见的编程语言中,如果要进行游戏开发,一般都选择C++/C#;想要做设备驱动、嵌入式,一般都选择C;想要开发OSX/IOS系统应用,一般都用Object-C;而想要做Web开发和Android应用、大数据相关,则大多选用Java;而Python更多用于进行图像处理、人工智能和黑客编程。
学习基础语法
数据类型 变量
运算符 操作符
条件 循环
高级数据类型
函数 类 对象
其中,一般高级数据类型、类和对象都是入门的难点,其余的基本半天就能理解搞定。
学习进阶语法
大多数编程语言都有其特有高级语法,如python的生成器、装饰器、元类等,无外乎是对基础语法的封装更方便调用,或是多进程、多线程、网络、多媒体等,与其擅长领域相关;
此外,还应多取关注代码的最佳实践,以求编写高质量代码,如可了解注释、文档、语法、调试、部署等方面的奇技淫巧。
学习相关框架和库
编程语言为了提高效率,避免重复开发,大多数都有自己比较流行的开发框架和第三方库,如Java的SpringMVC、SpringBoot、SpringCloud框架等,Python的Django、Flask、Tornado、Scrapy、FastAPI框架等,C++的OpenGL、OpenCV、OpenSceneGraph等开源库。
根据自己的研究方向,选择一些流行的开发框架,对于开发框架首先要知道其目录结构作用,其次是其内部通信机制,了解这些就已经入门了,多在实践锻炼实用熟练度。
第三方库很多很杂,可以选择一些比较流行和认可度比较高的,不会用就看源码或者官方文档,用好其中一个就够了,如Python里用以图表生成的库就有matplotlib、seaborn、pygdal、pyecharts、altair等十来种,但大部分情况下一个pyecharts,足够应付大部分的编码场景。