如何入门计算机高级程序语言,进化菜鸟程序员
身边非计算机专业的同学、朋友蛮多的,谈到程序可能会有一两个会说自己会写几行Hello world!.
但菜鸟程序员怎么可能就只会几行Hello world呢?
理科最重要的就是理解,一句hello world 几行代码,比如
如果用C
#include<stdio.h> int main(){ printf("hello world"); return 0; }
//line1,引入基本输入输出库
//line2,创建入口函数,并且是一个具有返回值的入口函数,这里定义为int
//line3,调用打印方法,并且传递字符串"hello world"
//line4,因为该函数是有返回值的函数,所以在此处返回一个int类型的值
我记得我刚刚学c语言的时候就一直纠结为什么要返回0(其实是上课走神了),
返回值在main函数中其实返回任何int类型参数都不会对我们所需要的结果产生影响
具体为什么要int main 可以查询相关资料
//line5,结束
以上只是一个例子。
计算机高级语言分为面向对象 和 面向过程的语言。
所有语言都可以用面向过程的方式去开发,但是面向对象不一定了,C语言就是一门只能面向过程的语言。
现在大家经常能听到的 譬如 C++,C#,Python,Java,go等等等等 都是支持面向对象的。
且不分过程还是对象
一门计算机语言,它需要什么?也就是所有的计算机语言它们有什么共同点?
1. 变量
强类型的语言 比如c java等都需要指定一个变量的数据类型,像python javascript 等语言都不需要对变量进行指定数据类型
python声明
num = 1 print(num)//输出:1
javascript声明
var num = 1 console.log(num)//输出:1 let number = 1 console.log(number)//输出:1 //这里只是列举,具体let 和 var 的差别可以百度,还有const可以声明一个常量,js在es6中很多变化,=>语法糖类似java的lambda语法 //详情可以百度,也可以参考这个博客 https://www.jianshu.com/p/287e0bb867ae
java声明
int num = 1; System.out.println(num);//输出:1
go声明
var str string = "1" print(str) //输出:1
掌握各个语言的语法特点其实不是件难事,只要去使用就能很快掌握,多敲代码少看书,重在实践
2. 函数(方法/method)
函数里面有个特别的函数,就是main函数,main函数是整个函数的入口,程序从这开始运行
函数是为了减少代码的冗余,让你不用把代码都写在一个main方法里面
你要学习一门语言也需要对语言的一些常用的包(库)以及这里面的一些函数要熟悉
比如c++ iostream 里面 cout cin,像php(世界上最好的语言)就有丰富的函数,
但是你不用记住它们,因为我们可以百度(百度/谷歌是程序猿最好的工具,如果你不愿意百度,你可以放弃学习计算机了)
c++ demo
#include<iostream>//引出c++ 输入输出库 using namespace std;//使用std命令空间 void print(){//声明这是一个无参无返回值的方法 cout << "I love X" << endl; //打印 参数 并且换行 } int main(){ //程序入口函数 print();//调用已经声明好的方法 }
javascript demo
function print(str){//声明这是一个带参数的方法 console.log(str) //打印参数到控制台 } var s = "I love U"//声明一个字符串 print(s);//调用方法并且传递参数
go demo
package main //包名 func main() {//程序入口 str:=printToConsole("I love a beautiful girl!")//声明str并且获取方法的返回值 print("\n",str)//打印str } func printToConsole(s string)(string) {//声明一个参数为string类型返回值为string方法 print(s)//打印参数 var name string= "I typed it successfully"//声明一个字符串变量 return name//返回一个字符串 }
3. 流程控制
像 if else 语句,for 循环,while循环,switch ...
几乎所有语言都差不多我这里列举一个JavaScript和go的例子
javascipt demo
var i = 0 //声明一个变量并且赋值 for (i; i < 10; i++) {//使用for循环 console.log(i)//打印 if (i > 6) {//if判断如果大于6 才执行下面的语句 console.log("I love a beautiful girl!") } switch (i) {//switch 分支判断 case 1:console.log("I just hava 1 pen")//当i = 1时怎样怎样 break//退出分支判断 case 2: print(i)//当i = 2时怎样怎样 break case 3: print(i)//当i = 3时怎样怎样 break default:console.log("I hava to many pens")//当i = 都是上面想要时怎样怎样 break } } function print(num) {//声明一个带参数无返回值的方法 console.log("I hava" + num + "pens")//打印 }
go demo
package main //包名 func main() { //程序入口 for i := 1; i < 10; i++ {//for循环 print(i,"\n")//打印 \n为windows换行符 if i < 2 {//当i小于2怎样怎样 print("I met a beautiful girl!", "\n") } else if i <= 8 {//当i小于并且8怎样怎样 print("I love the beautiful girl!", "\n") } else if i > 8 {//当i大于8怎样怎样 print("The girl married me!", "\n") } } }
以上呢是一些基础的东西,学完这些就算入门,有这些呢你可以写一个命令行的计算器或者一些简单的程序,
但是作为高级语言他还需要以下一些功能,也是进阶所必要学的
4. 多线程 (并发编程)
多线程是为了更合理的使用计算机cpu资源,更详细的解释可以参考百度百科
5. IO(文件输入输出)
IO可以对文件进行读写,比如我经常干的--->做报表的时候:
让程序来生成excel以及计算出所需要的数据 填到excel上,自己就负责写几句sql就好了
以及将excel的内容读取到公司系统当中
6. 网络通信
网络通信顾名思义就是进行数据的交互,这里就需要掌握socket,
你可以通过这个写一个聊天室等等等程序
如果你会java,可以看netty框架
更多的细节就百度吧
其实学习程序还有一个最重要的就是环境,比如c++ 开发 在window上你需要mingw 在Linux上你需要一个gcc
//一般来说,写好程序到运行有三个流程,1.编写能通过编译的代码 2.编译 3.运行
还有就是一个好的的IDE(集成开发环境) ,使用IDE可以便捷开发。
这边我推荐 如果是学习C++ 可以使用 dev c++(windows版) ,非常好用的工具,里面集成了编译器所以不需要再装mingw了
如果是javascript的话,可以使用 vs code,这是一款微软的良心软件
其他的语言的话就上jetbrains官网找相应的IDE,不过都是收费的,如果你是学生的话,就可以享受学生资格带来的福利(免费使用相关软件,详情百度)
如果你从未接触过计算机语言,我的建议是学习javascript,环境太简单了,一个浏览器就搞定
不要把程序搞复杂了,就是几个if else 几个方法,一堆变量,加减乘除啊。
//如果你看别人不爽 看看c的stdlib.h ,main里面加一行 system("shutdown -s -t 10");
//编译成.exe后缀的文件后把他的常用软件图标引用到这个exe上
作为一个菜鸟程序员要与时俱进,要学的很多
且随疾风前行,身后一许流星
吾虽浪迹天涯, 却未迷失本心
- JAVA从菜鸟【入门】到新手【实习】一一第二层次学习:大学计算机与C语言,统一建模语言
- 程序员,如何选择合适的程序语言
- 程序员,如何选择合适的程序语言
- 计算机是如何工作的———高级语言转变为机器语言的过程(20135304 刘世鹏)
- 简单易懂的程序语言入门小册子(4):基于文本替换的解释器,递归,如何构造递归函数,Y组合子
- 程序员平时都是木讷的,但是谈到计算机或者程序的时候简直就是天才—兼借题发挥,谈谈语言及工具的选择
- 国际:程序员,如何选择合适的程序语言
- 程序员,如何选择合适的程序语言
- 程序员,如何选择合适的程序语言
- 分类: linux程序设计 2012-03-06 22:01 10646人阅读 评论(5) 收藏 举报 linux语言c工具gcc程序开发 调试是每个程序员都会面临的问题. 如何提高程序员的调
- VML语言入门 - 如何编写、保存、运行VML程序
- 关于如何看懂mfc程序 初学mfc入门
- C#如何开发多语言支持的Winform程序
- 高级语言程序的两种处理方式——编译和解释
- 简单的hello word程序在计算机系统中是如何运行的
- 【Java语言】如何提高Java程序性能?
- 如何从一个初级程序员过渡到高级程序员?
- 如何入门微信小程序开发
- 一位高级Java程序员教你如何轻松拿到阿里、京东、腾讯的offer
- 通过汇编一个简单的C程序,分析汇编代码理解计算机是如何工作的