为了能在最快的时间里理解更多语言的相同点和不同点,我用大家最熟悉的Hello World来展示一下各个语言的奥妙

请尊重原创,转载请注明来源网站www.shareditor.com以及原始链接地址

注意:整个教程是基于linux系统的(为了方便讲解,我选择用vmware虚拟机装了CentOS 7来演示,其他linux均可),包括编译器、依赖库安装过程、命令行,如果是使用windows或mac系统稍有差别,CentOS 7安装方法百度一下你就知道

万物之源的C语言

简述:C语言是编译执行的语言,linux下常用的编译器是gcc,c语言源代码可以直接被编译成可执行程序(机器码),说它是万物之源是因为其他各种语言都是用C语言写的,如java、php、python……

源代码:hello_world.c

#include <stdio.h>
int main(int argc, char* argv[])
{printf("hello world\n"); return 0; }

编译执行:

[root@centos7vm code]# gcc -o hello_world hello_world.c
[root@centos7vm code]# ./hello_world
hello world

最流行的java语言

简述:java语言曾一度家喻户晓,有人可以昂起头说我会java,如今虽然潮流已过,但java跨平台的优势以及强大的类库着实不容小觑,其他语言很难超越,java衍生除了非常多周边产品(如jsp),非常多的开源系统都是基于java(hadoop、hive、hbase、lucene等),java和c一样也是编译执行的语言,区别在于java编译出的字节码文件运行在一层java虚拟机之上,而虚拟机可以架设在各种操作系统上,所以java也就有了跨平台的优势,一处编译多处执行

环境准备:

[root@centos7vm code]# yum install java*

源代码:hello_world.java

class HelloWorld {public static void main(String[] args) {System.out.println("hello world"); } }

编译执行:

[root@centos7vm code]# javac HelloWorld.java
[root@centos7vm code]# java HelloWorld
hello world

互联网时代的html语言

简述:html是超文本标记语言,通俗来说就是展示网页的,是一种解释执行的语言(读一句展示一句,不需要编译成其他形式),html通过一个个标签来指示浏览器怎样展示网页

源代码:hello_world.html

<html><head></head> <body> <h1>Hello World!</h1> </body> </html>

用浏览器打开展示效果:

解释执行的脚本语言bash

简述:bash是shell脚本的一种(也叫bshell,类似还有csh和ksh),其实类似于dos里的bat批处理程序,把一堆顺序执行的命令写到一个文件里一起执行,同时扩展了一些分支、循环、函数等语言特性,在服务器端开发和运维中经常用到

源代码:hello_world.sh

#!/bin/bash
echo "hello world"

执行效果:

[root@centos7vm code]# sh hello_world.sh
hello world

即能编译执行又能解释执行的python语言

简述:python的强大在于它的不伦不类,说它是解释执行,它却会编译成文件,说它是脚本语言,它却具有面向对象的所有性质,如今python开源的类库已经非常强大了,什么功能都有,python也成了大数据方向必要的工具

源代码:hello_world.py

#!/usr/bin/python
print "hello world"

执行效果

[root@centos7vm code]# python hello_world.py
hello world

ps:python还可以交互式执行,也就是像在终端里执行python语句一样,如下:

[root@centos7vm code]# python
Python 2.7.5 (default, Nov 20 2015, 02:00:19) [GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> print "hello world" hello world

请尊重原创,转载请注明来源网站www.shareditor.com以及原始链接地址

号称全世界最好的语言的php

简述:动态网页后端语言有很多,asp、asp.net、jsp、c#、python、php……,php可以说是最容易上手的语言

环境准备:

[root@centos7vm code]# rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
[root@centos7vm code]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
[root@centos7vm code]# yum install php55w.x86_64 php55w-cli.x86_64 php55w-common.x86_64 php55w-gd.x86_64 php55w-ldap.x86_64 php55w-mbstring.x86_64 php55w-mcrypt.x86_64 php55w-mysql.x86_64 php55w-pdo.x86_64

源代码:hello_world.php

<?php
print("hello world\n")
?>

执行效果:

[root@centos7vm code]# php hello_world.php
hello world

ps:实事上php程序不是这样用的,而是和http服务器一起通过接收http请求,并执行响应的php脚本,然后返回html标签给用户,实现动态网站,后面会详细讲解

网页样式语言css

简述:css是html的一个辅助语言,用来描述网页样式,html没有css也可以工作(可以通过标签的各种属性以及style属性定制样式),但css可以把样式做抽象,和html剥离,这样html单纯用作布局

源代码:

hello_world.html

<html><head><link rel="stylesheet" type="text/css" href="style.css" /> </head> <body> <h1>Hello World!</h1> </body> </html>

style.css

h1 {color: red }

用浏览器打开展示效果:

网页前端脚本语言javascript

简述:javascript是可以运行在网页前端的脚本语言,可以基于html之上实现更丰富的交互、异步回调、多线程、定时器、动画等

源代码:hello_world.html

<html><head></head> <body> <script type="text/javascript"> document.write("<h1>Hello World!</h1>") </script> </body> </html>

用浏览器打开展示效果:

总结

综上,挑选了几种典型语言来说明运行过程,针对不同的业务场景选用不用的语言,每种编程语言可以边用变查,不建议一开始就系统学习,而应该运用一段时间后再系统学习,从而补充一些没用过的特性。

有关编程语言更高阶的内容可以看看《编译原理》、《lex & yacc》

网名:浩秦; 邮箱:root#landv.pw; 只要我能控制一個國家的貨幣發行,我不在乎誰制定法律。金錢一旦作響,壞話隨之戛然而止。

教你成为全栈工程师(Full Stack Developer) 一-各显神通总结八大类编程语言的区别...相关推荐

  1. 教你成为全栈工程师(Full Stack Developer) 〇-什么是全栈工程师

    作为一个编码12年的工程师老将,讲述整段工程师的往事,顺便把知识都泄露出去,希望读者能少走一些弯路. 这段往事包括:从不会动的静态网页到最流行的网站开发.实现自己的博客网站.在云里雾里的云中搜索.大数 ...

  2. 什么是全栈,Full Stack Developer

    Full Stack Developer 全栈工程师,网上众说纷纭,各种解释都有,我也看了很多,但总结一句. a genuine interest in all software technology ...

  3. 《Web全栈工程师的自我修养》读书笔记

    <Web全栈工程师的自我修养>读书笔记 [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://w ...

  4. 全栈工程师15年经验分享:40个改变编程技能的小技巧

    白交 发自 凹非寺  量子位 报道 | 公众号 QbitAI 编程如何节省更多的时间,犯更少的错误? 最近,这样一份「心得」火了.这位名叫Kesk Noren的软件工程师在Medium上分享了一篇博文 ...

  5. 大写的服!用耳朵也能写代码?盲人程序员自学编程成为全栈工程师

    作者 | 年素清 责编 | 王晓曼 出品 | 程序人生 (ID:coder _life) 蔡勇斌幼年失明,靠着顽强的毅力和不服输的精神自学编程,成为了一名全栈工程师.作为一名盲人,为了让全中国的其他盲 ...

  6. 《web全栈工程师的自我修养》阅读笔记

    在买之前以为这本书是教你怎么去做一个web全栈工程师,以及介绍需要掌握的哪些技术的书,然而看的过程中才发现,是一本方法论的书.读起来的感觉有点像红衣教主的<我的互联网方法论>,以一些自己的 ...

  7. python工程师月薪多少-Python全栈工程师为何这么火薪资这么高看了才知道

    (文章转载于网络) 我每天听见全栈工程师这个成语. 这么很多小伙伴还是不明所以,什么是全栈工程师?咋回事全栈开发用Python?Python Web全栈开发到底有多高薪?今天就来为大家解读一下. 啥是 ...

  8. HTML5培训分享:HTML5全栈工程师是什么?

    一.前言 技术在过去的几十年里进步很快,也将在未来的几十年里发展得更快.今天技术的门槛下降得越来越快,原本需要一个团队做出来的Web应用,现在只需要一两个人就可以了. 同时,由于公司组织结构的变迁,以 ...

  9. python全栈工程师薪资-Python全栈工程师为何这么火薪资这么高看了才知道

    (文章转载于网络) 我每天听见全栈工程师这个成语. 这么很多小伙伴还是不明所以,什么是全栈工程师?咋回事全栈开发用Python?Python Web全栈开发到底有多高薪?今天就来为大家解读一下. 啥是 ...

最新文章

  1. JavaScript强化教程 -- cocosjs场景切换
  2. 虚拟机ubuntu19.04下设置idea快捷键
  3. apache下django配置【原创】
  4. 新一代Spring Web框架WebFlux!
  5. 计算机基础知识187,中职计算机基础 (187)(11页)-原创力文档
  6. 欧盟:2020年之前普及免费WiFi网络
  7. 2019/3/27写给自己
  8. SharePoint【Site Definition 系列】-- 05. List Definition与List Template之比较
  9. python将word文档转换为txt
  10. Dll入口函数参数详解...
  11. dpdk bond口学习笔记
  12. 笔记73-应用容器Docker
  13. 电石炉技术的发展及电石炉尾气解决方案
  14. 用Python做三角形的面积
  15. 自制AI图像搜索引擎[笔记]
  16. IBTrACS Technical Documentation
  17. 抖音做直播有哪些技巧,抖音新手直播应该注意什么:国仁楠哥
  18. <Linux> Ubuntu kernel 源码编译 替换
  19. 什么是Web3?为什么说通往Web3的是区块链?
  20. mac启动terminal终端快捷键

热门文章

  1. mysql 字符串函数
  2. [delphi函数]RenameFile 文件改名
  3. WMITesting
  4. asp.net C#绘制太极图
  5. Android 4.0 ICS SystemUI浅析——SystemUI启动流程
  6. 软件项目经理怎么做?
  7. 自定义添加的鼠标事件
  8. [转]Windows环境中使用版本管理工具 Git
  9. 关闭selinux服务
  10. 私藏的开发过程中的那些基类