编程_编程器 - CSDN
  • 本课程提供零基础的孩子学习编程,学习Python语言的基本知识,讲课内容通俗易懂,结合大量的实例,让孩子更容易理解编程中的一些概念。 学会本课程后,孩子能看懂一般的Python代码,并能写简单的程序,学会编程...
  • [oeasy]教你玩转java编程-我的世界mc编程入门
  • C++编程实例100篇

    2020-07-30 23:30:36
    C++编程实例100篇,里面有很多很基础的编程实例,可以作为参考。
  • 编程

    2020-05-24 20:59:38
    什么是编程语言? 编程语言可以分成机器语言、汇编语言、高级语言三大类。 现在说的编程语言一般都是指高级语言,是大多数编程者的选择。和汇编语言相比,它不但将许多相关的 机器指令合成为单条指令,并且去掉了...

    编程 是个动词,编程==写代码,写代码为了什么? 为了让计算机干你想要干的事情,比如,马化腾想跟别人聊天,于是写了个聊天软件,这个软件就是一堆代码的集合,这些代码是什么?这些代码是计算机能理解的语言;

    计算能理解的语言是什么呢? 它只能理解2进制,0101010...,你总不能手动输一堆二进制给计算机(虽然最原始的计算机就是这么干的)让它工作吧,这样开发速度太慢了(完全满足不了社会的需求)。所以最好的办法就是人输入一个简单的指令,计算机能把完美的把这个指令转化成计算机能识别的二进制指令并进行执行;

    编程语言可以分成机器语言、汇编语言、高级语言三大类。现在说的编程语言一般都是指高级语言,是大多数编程者的选择。

    计算机并不能直接地接受和执行用高级语言(c,c++,java,python等)编写的程序,程序在输入计算机时,通过“ 翻译程序(编译器)”翻译成 机器语言形式的 目标程序,计算机才能识别和执行。

    以C语言为例,你写好的C语言程序电脑是识别不了的,无论你写的如何简单,电脑都不懂;只有经过编译器翻译成机器语言形式,硬件设备才能知道:哦..原来你是要干这个事!

    也就是说,我们编程是依赖于编译器的,没有编译器,我们写出来代码就是废物(没卵用),也可以说编译器就是我们编程的规则,它制定了我们编程的规则,我们需要做的就是在它允许的规则内进行开发(写代码)),写好了以后交给编译器,它来进行翻译成机器语言,进而让计算机执行我们的命令;

    这种“翻译”通常有两种方式,即 编译方式和解释方式。

    编译方式是:事先编好一个称为 编译程序的机器语言程序,作为系统软件存放在计算机内,当用户由高级语言编写的源程序输入计算机后,编译程序便把源程序整个地翻译成用机器语言表示的与之等价的目标程序,然后计算机再执行该目标程序,以完成源程序要处理的运算并取得结果。(先将整个软件的代码都翻译成机器语言再运行)

    解释方式是:源程序进入计算机时, 解释程序边扫描边解释作逐句输入逐句翻译,计算机一句句执行,并不产生 目标程序。(不会提前翻译好,而是,代码执行到那一步就翻译那一句,一句一句的翻译,一句一句的执行)

     

    参考来源:https://blog.csdn.net/weixin_44867000/article/details/89330143

    展开全文
  • 千万不要学编程

    2020-04-27 09:57:47
    今天我在CSDN博文中,不讲技术,不讲技术,不讲技术!...在讨论为什要学编程这个问题之前,我想各位接触过编程的伙伴们已经接受过编程的学前教育了,当然这个开启你学前教育的人或许是你的老师或许是你的玩...

    今天我在CSDN博文中,不讲技术,不讲技术,不讲技术!重要的事情说三遍!我要说的是,千万别学编程,为什么说“千万不要学编程”呢?我们可以先反过来讨论“我们为什么要学编程?”这个问题讨论清楚了,你也就明白我为什么说千万不要学编程了!

    学习编程应该是这样的逻辑吗?
    在讨论为什要学编程这个问题之前,我想各位接触过编程的伙伴们已经接受过编程的学前教育了,当然这个开启你学前教育的人或许是你的老师或许是你的玩伴,或许是各个招牌岗位的工作要求!
    是的,正如我们的编程学前教育老师所言,现在是人工智能高速发展的时代,是网络高度发达的时代,每个人的生活或者工作都已经不可避免的要和这些智能设备打交道,所以,我们要学习……。可,我还会想问,难道就因为这个我们就要学习编程吗?
    在这里插入图片描述
    我感觉这样的逻辑还是很有漏洞的,比如我们的生活中每个人都要穿衣服,不会说每个人都要去学习纺织或者服装设计,我们每个人每日都要吃饭,不会说我们每个人都必须是农名或者厨师。除非……
    除非,你真的对编程充满好奇和向往,除非你的事业需要编程来助你一臂之力,除非你很享受不分昼夜坐在电脑旁一遍敲代码一遍烧脑的感觉……但不论怎样,你想靠编程来发大财,那就不是一般的困难了,你要知道本贾尼·斯特劳斯(C++之父)至今还没有发财,还在写书卖书呢!盖茨、乔布斯、扎克伯格他们也不是顶着“程序猿”的头衔发的财,但不可否认,是编程,不,准确的说,应该是计算机和网络这个行业将他们带入了财富的王国。

    如果我们冷静的想想,我们会发现,各行各业都有成功获取巨大财富的巨人,他们也没有去学习编程啊!所以,如果你是想通过编程来改变自己命运,获取财富的人,劝你再仔细斟酌,或许你更适合做销售,做牙医,做律师,或者做厨师、或者网红……

    学习编程真能为求职添加砝码?
    二十年前,不管你是不是名牌大学毕业的,如果你学习过一点C语言,能够会几行代码,你是一个软件人才。如果你会用烧录器擦写51芯片,那么你可能就会被当做一个嵌入式软件开发人员,这和50年代拿小学生当知识分子是一个道理。但现在你仅仅拿着这些东西断然无法撬开求职的大门的。
    在这里插入图片描述
    所以,如果是本着想学习点编程的皮毛知识来为求职添加砝码的想法,那么我又会劝你,不要耽误宝贵的精力了,毕竟“业精于勤“,术业在于专攻,多用点精力把自己的本专业搞精深一些比学点皮毛编程强多了!

    如今的就业环境已经不是二十年前了,许多领域都越来越专业深入化了,越来越多的中国公司都已经引领行业发展方向了,越优秀的公司对人才的要求就越苛刻,BAT的人才招聘几乎都是在211和985学校举行招聘宣讲,为的就是找到更专更精的人才。作为理工科专业的同学,如果我们在专业过硬的基础上,又能有扎实的编程技能,诚然可以为求职添加砝码?但如果你是一个学新闻的或学导游的,那恐怕在当今社会,别人只能认为你是个野路子,估计会唯恐避之不及吧!

    不管哪个培训学校也好(哪怕是培训界的明星学校出来的)网络培训也好,在没有专业知识做铺垫的时候,学完毕业所能干最好的岗位就是传说中的外包业务程序员了,就如流水线上的工人了。但不幸的是,外包业务十多年年每年都在下降,有核心竞争力的企业没有一个不是自己去研发自己的软件业务产品。

    我们一辈子不能只知道学学学,而不知道问几个为什么,所谓学而不思则罔。人的精力总是有限的,学习任何知识和技能都是要消耗时间精力的,时间精力消耗了,那我们所专攻的领域和知识就要被冷落甚至搁浅,所以我们不能总是在学不好学不动的情况下才发问:我们为什么要学英语,我们为什么要学数学,我们为什么要学编程?

    实际,我觉得我们必须在动手做一件事情之前就要多问问自己,为什么要做这件事情,我们为什么要学编程呢?

    别告诉我你学习编程是被绑架!
    前面我们谈到了,一种是为了“创业发达”,一种是为了求职添加砝码,除了这两种,我想最悲惨的就是学理工的同学们了,除了一部分真正喜爱编程,将来工作中用到编程且能从中受益的同学,其余的那部分即用不到又无法从中获益,但还是必须学,我称他们为“被科学绑架”的学习者。
    在这里插入图片描述
    他们是最悲惨的,我记得我的同学中有百分之九十是这样,九十年代末上大学的理工学生基本都已
    开始学习编程了,可二十多年过去了,好多连电脑软件都不会安装的至少有八成,更别说他们工作在编程第一线以及从编程中受益了。他们就是当初被绑架着学习了编程,这和许多学中医学国画专业的同学被绑架者学英语基本一样!

    学习编程也是一种“贪”!贪念害己!
    在学习的道路上,上帝给了人两个最自相矛盾的人性,第一个就是害怕困难,第二个就是贪多求快。所以即使是一开始对编程怀揣梦想和憧憬的理工男,即使是自恃才高觉得自己分分钟可以掌握一门语言的学霸,也有许多倒在了编程的各种困难沼泽里了,有的倒在了起步中,比如几个C++指针和回调函数,又或C#的代理和事件机制,更有甚者甚至一个IDE都安装不好,也就提早投降了;有的倒在编译原理或者操作系统通信机制上;有的则葬身于无休止的BUG修复中,一连几个月为修复百小时通讯中一个比特的误传BUG或许你下辈子也不再想碰编程了!传说中的华为腾讯百度淘宝,不给钱也资源往死里加班,那可是真的,否则你的这个BUG挡住了项目的进展,谁来负责!!或者你带着这个BUG狼狈的辞职,或者往死里加班硬着头皮解决它!
    在这里插入图片描述
    贪多求快,也许是现在社会快节奏的产物,我想古代应该有,但我感觉当今最严重,所以网络上或者市面上那些“七天掌握单片机”“一个月精通java”的教程满天飞,诱导着一批贪多求快的小伙伴进入了编程。他们有的说,闲着也是闲着,随便找点东西弄,总比闲着强,多学一点东西不好吗?(同时脑子里还脑补着自己成为超级黑客的样子,的确让人可以激动几个小时)。
    我想告诉你,编程不仅仅是安装好IDE后“成功”输出一个“hello world”字符串,不仅仅是在对话框上拖入两个按钮,显示两个MessageBox,更不是教科书上关于printf的各种花式用法以及用printf打印各种花样的星号图形(什么杨辉三角)。即使你成功的学会了printf,甚至学会文件读写、学会了调用数据库、学会了TCP/UDP、学会了各种框架,也只能说你会了最表面的一些东西,也只能说你已经学会了依样画葫芦的基本功和拿来主义的基础招数,这样的基本功仅仅使你具备了在网络上抓代码为己所用而已。如果你没有自己的智慧与语言及IDE的融通,你最多就是一个code copier!

    好吧,就算你完全已经达到了能够拷贝别人的代码了,但自己想实现的功能和设计要求如何实现呢?咱们不能总在网上守株待兔的等别人的代码来帮自己实现自己的设计需求吧!
    如今,但凡有点技术含量的东西,尤其是AI领域的哪个不会涉及到一些算法,简单的则会涉及到高等数学,比如最小二乘数、微分、积分控制、傅里叶、拉氏变换等(如媒体处理),再如神经网络、遗传算法的各种变种算法。当然,这些对于潜心学习理工的同学也非常小儿科,但如果我们只是为了贪心,想让自己多一项所谓的技能和打发无聊就来学编程,我想奉劝您,洗洗睡吧,那样更实在!
    至于那些希望求快的,那就更是要使你们失望、败兴甚至懊悔了,上当的感觉是不好受的!编程是需要积累的,时间的积累是基础,知识的积累是更是前提!所以,贪念最终还是会害了自己!
    在这里插入图片描述

    说到这里,当初由于玩游戏玩得不错,突然萌发一梦,想开发一款游戏的梦幻小伙伴们,你们的编程梦是否已在面前轰然倒塌??!!(当然,或许您只是想编一款游戏外挂为自己自动做任务,对吧?)

    学习编程能使事业“锦上添花”吗?
    我说千万别学编程,说得就是前面几种,但对于,靠编程来使自己的事业“锦上添花”的人群来说,学习编程不失为一种选择。但,我还是想说,术业有专攻,人不是万能的,如今社会讲究分工合作,专注自己的领域。即使是编程领域也是不断的朝着让程序员专注业务实现,让美工专注前端和UI的方向发展。虽然一直没有实现,但这方面的努力从未间断过,如一直以来MVC的提倡和实现之路就是明显的例子。2010年后慢慢火起来的arduino、树莓派、microbit、伽利略以及后面出现的processing、p5js都企图让一些非编程专业领域的人进入编程领域,尽可能的使编程实现简单化,但这么多年了,最后能够将他们用起来的人寥寥无几,网络上一些有关这些编程工具及经验的分享者仍然是一些老程序员。在商家们的簇拥下,老程序员装扮成为非编程专业领域的新手,吸引更多的眼球和流量,为商家的器材和商业计划买单而已。

    回到文章的开头,我们仔细思考了为什么要学习编程,思考清楚了,自我审视清楚了我属于哪一类?如果我属于上述几类,那我奉劝,“千万不要学习编程”!但~~~~~~~

    如果您有机会成为编程界的“巨匠大咖”!
    当然,如果你还是个小孩子或者长不大的小大人,不知道自己喜欢编程,会否爱上编程,想来一次"抓周",那也是未尝不可的,或许一次尝试就让中国产生了一个编程界的巨匠和艺术家也未可知啊!
    在这里插入图片描述
    如果,您才思敏捷,数学基本功好(应该说喜欢钻研数学问题有把握学好数学也可),趁着年纪小,早点开始学习编程吧。毕竟盖茨13岁就开始了,杰克多西(Twitter创始人)8岁就开始了。咱们中国的强大,也需要一批这样从小就表现出编程爱好的神童,来实现我们的软件大国梦、软件强国梦!

    展开全文
  • 编程知识体系概述

    2017-12-21 10:11:26
    半年前给一个朋友写了一个学习编程入门的简单文档,现在放出来。这篇文章针对的是编程新手,只求能涵盖大部分常用的东西,请各位开发届大牛不吝赐教!不过请考虑文章的对象,不要吹毛求疵了? [计算机专业的新手...

    半年前给一个朋友写了一个学习编程入门的简单文档,现在放出来。这篇文章针对的是编程新手,只求能涵盖大部分常用的东西,请各位开发届大牛不吝赐教!不过请考虑文章的对象,不要吹毛求疵了?

    [计算机专业的新手们,可以看我的这个回答:计算机专业大一迷茫求指点-王晋东的回答]

    本文的目录如下:

    1 平台

    1.1 桌面平台:[1.1.1 Linux,1.1.2 Windows,1.1.2.1 .NET平台,1.1.2.2 非.NET平台,1.1.3 Mac]

    1.2 移动平台:[1.2.1 安卓Android,1.2.2 iOS,1.2.3 Windows Phone]

    1.3 Web平台:[1.3.1 前端,1.3.2 后端]

    2 语言

    [2.1 C, 2.2 C++, 2.3 C#, 2.4 Java, 2.5 HTML, 2.6 PHP, 2.7 Python, 2.8 ASP.NET, 2.9 其他]

    3 工具

    [3.1 Visual Studio, 3.2 Eclipse, 3.3 Intellij IDEA, 3.4 Android Studio, 3.5 XCode, 3.6 Pycharm]

    4 辅助

    [4.1 数据库, 4.2 Github, 4.3 MOOC]

    1.平台

    1.1 桌面平台

    桌面平台以操作系统来分类,分为Linux、Windows和Mac三个平台。

    1.1.1 Linux

    Linux是著名的黑客Linus在大学开发的开源操作系统,建立在早期的Unix内核基础上。由于它优良的特性及开源的管理方式,吸引了全球大批的开发者使用。Linux一般是用于服务器,因为它作为一个操作系统来说本身极其优秀,适合在后台作为服务器系统持续稳定地运行。 Linux上的编程是比较基础的,考察你对命令的掌握情况,不过对于新手的话,还是有一定难度的。虽然号称掌握了Linux就说明是个大牛,但是至少这种言论是片面的。不过学习Linux确实能提高对计算机的理解能力,这方面比较好的书有一个叫[《鸟哥的Linux私房菜》](http://vbird.dic.ksu.edu.tw),专门为学Linux写的好多书,业界评价很高。

    1.1.2 Windows

    Windows是使用最为广泛的操作系统,粗略分类也可以为分个人用户版本(专业版,基本版,家庭版等)和服务器版本(Windows Server)。不过由于Win10的推出,Windows现在实行全平台统一内核的方式管理,又新增了嵌入式版本的Windows。 Windows上的编程是最基本的,因为绝大多数人都在用Windows。从QQ到英雄联盟,从快播到书店管理系统,从ATM到银行交易,基本都是在用Windows(当然,很大一部分后台都是Linux。Windows和Linux是最重要的操作系统)。Windows下有很多的编程框架,大致可以分为两种:一种是微软出品的(限于Windows就是微软的)以.NET为代表的编程框架,另一种是其他第三方的平台。

    1.1.2.1 .NET平台

    以前的.NET只能运行在装有特定版本的Windows操作系统上。.NET伴随着Windows的更新也一直从1.0升级到如今的4.5.以.NET为母体,如今微软将.NET开源了,苹果和linux都可以用了。通过mono,可以在各个操作系统上调用.NET。不过,真正拿.NET主力开发的,恐怕大多数还是windows吧。有MFC(C++,非常古老)、WinForm(C#,主流)、WPF(C#)等编程框架。

    - MFC:很古老的一种编程框架,用C++写的,有控件,有事件,有服务,很完备。缺点就是东西太古老,不好用,现在各高校仍然有课程在用(比如图像处理等),但是做这东西事倍功半,不推荐;

    - WinForm:非常主流的编程框架,很多软件都是用这个框架做的。用C#作为编程语言,运行很稳定,好上手,开发成本低。

    - WPF:微软新推出的编程架构,界面很绚丽,用XAML+C#作为开发语言,优秀的MVC架构,是未来的趋势。可惜发布时伴随着Vista系统的失利,加上其本身庞大的资源消耗,所以基本上没有多少人在用。不过它的思想是先进的,一路走来赶上win8和win10(商店应用)都是在用的。

    1.1.2.2 非.NET平台

    非.NET平台的框架一般都可以跨平台使用。

    - Qt:诺基亚出品的编程框架,用C++开发。有自己的界面库,支持跨平台。在前些年很火,不过现在不流行了。

    - Java平台:Java本身是个语言,但是基于Java有很多开源的框架和平台,如Swing等,都提供自己的控件。不过运行效率太低,因为Java本身就是个虚拟机。目前随着硬件平台效率的提高,已经不是问题。绝大多数服务器后台都运行的是java。

    - 还有其他的平台,在Windows上使用率基本很少。

    1.1.3 Mac

    Mac是苹果专用操作系统,苹果系统很大一部分软件都是用Mac下的软件开发工具做的。Mac下的开发框架叫Cocoa,iPhone下的叫CocoaTouch(多了个touch)。当然,Mac下的软件也可以用上面的跨平台的框架来开发。这方面不做过多介绍。

    1.2 移动平台

    现在最火的就是移动平台了,这一点毋庸置疑。

    1.2.1 安卓Android

    安卓是一个开源的操作系统,在2008年首次推出,之后由Google收购,到现在是最火的操作系统。Android的内核是基于Linux的,由于其开源的特性,所以很好定制,使得Android在短短几年内迅速占据移动操作系统的三分之二。 Android开发是基于Android提供的SDK(软件开发包)进行的。主要的开发语言是Java(用来写后台逻辑)和XML(用来写界面)。 Android开发有一些书,这方面比较有代表性的是[《疯狂Android讲义》](疯狂Android讲义_百度百科). 早期(2013年前)Android的开发环境是Eclipse,配合Android的SDK、模拟器等,后来Google推出了整套的Android Studio进行安卓开发,效率非常高,现在基本都在采用Android Studio进行开发。

    - [视频教程](安卓Android开发_安卓Android开发视频教程从入门到精通 - 麦子学院)

    1.2.2 iOS

    iOS是苹果iPhone以及iPad上的操作系统,只能在苹果机开发,只能用在苹果产品上。iOS是一个及其优秀的移动操作系统,安卓在发展的早起,很多都是借鉴了iOS的开发经验做的(当然,后来就互相抄袭了)。iOS开发使用苹果出品的XCode软件进行,这个软件还可以用来开发Mac下的软件。XCode是一整套的开发工具的集合,可以设计界面、进行调试、上传到应用商店等。iOS开发使用Objective-C编程语言和Swift编程语言,后者是苹果在2013年6月推出的新一代编程语言,集合了当下所有语言的优良特性,大有取代Objective-C的意思。所以Swift一直很火。这方面的教程有:

    - [斯坦福大学公开课iOS开发](斯坦福大学公开课:iOS 8开发)

    - iOS开发指南等。

    1.2.3 Windows Phone

    Windows Phone是微软出品的手机操作系统,现在已升级到了Windows Mobile 10.它的开发环境是Visual Studio,用C#进行开发,基本就是windows下开发软件(WPF)的模型是一致的。虽然我在大学做的最多的就是WP(因为上手快,微软的教程给力),但是它的市场占有率多年来一直升不上去。希望得益于Windows10的爆发,能给点力。这方面不给教程了。

    1.3 Web平台

    Web平台的编程基本是基于服务器的编程。这方面分为网页(前端)和服务(后端)。

    1.3.1 前端

    前端就是我们所看到的网页。比如[百度](百度一下,你就知道)的首页很朴素,[QQ浏览器](QQ浏览器9官方网站 - 浏览器_浏览器下载_微信电脑版)的首页就很酷炫,等等。这些是用什么实现的? 实现语言会在后面再介绍。概括来说

    - html是所有网页语言的鼻祖,网页都得用它;

    - CSS就是一个样式选择器,那些字体、颜色等都是用的CSS来控制的;

    - javascript是网页脚本(它可和java没有半点关系),是用来写简单的后台逻辑交互和前端界面交互的;

    - html5是最新的html的版本,支持众多的界面特性。QQ浏览器的首页就是用html5做的。

    1.3.2 后端

    后端是用户看不到的,小到注册一个用户,大到处理几十万的数据,都是后端来做。这方面典型的开发语言是C++、Java、php和python、ASP等。 后端是基于服务器进行的开发。基本上在软件工程中处于很顶级的地位。这方面用Java开发是业界很流行的,因为Java没有C++那么难写,本身又有很多框架,比如Spring等,非常适合写后台的数据交互。

    2.语言

    计算机编程语言有几百种,小到智能手机,大到服务器集群,都运行着各种各样的编程语言写的程序。没有哪一种程序就比另一种高贵,都各司其职,完成我们交给他们的任务。

    计算机专业的学生一般学习编程都是从C或者C++开始的。这两种语言在大多数高级语言中出现较早,影响力也很大。对于计算机专业,当然要学好这两种语言,才能为以后学习其他语言打下基础。

    对于非计算机专业或者以前从没接触过编程的同学来说,不建议上手就学C和C++,因为它们偏难,而且并不是必须的。对于这些背景的同学,十分建议学Python。因为Python首先是跨平台,然后,没有特别复杂的语法(至少完成日常使用不需要),最重要的是,有各种各样的包能支持你做各种各样的事情!

    2.1 C

    C是基础性语言。它不是面向对象的,是面向过程的语言。C诞生于1972年,其优良的特性很高的效率使它长期占据编程语言排行榜第一名。C可被广泛用于桌面、服务器、嵌入式开发中。

    - [C程序设计视频教程](C程序设计案例教程(2015秋季)-学堂在线慕课(MOOC)平台)

    2.2 C++

    C++可以看作是对C的扩展,增加了面向对象的机制。什么是面向对象?简单来说就是,所有的要操作的物体都是对象,比如一个人是一个对象,一条狗也是一个对象。接着就可以在对象上定义操作,比如人走路是一个函数,人吃饭也是一个函数。这样设计的好处就是可以封装起来多次使用,也可以进行继承。保留总体的相似性,又不失个体的个性。比如张三和李四都是继承人这个类,但是张三吃饭要3分钟,李四就要10分钟,这就是个性。面向对象设计的思想可以在[这里](什么是面向对象编程思想? - Java - 知乎)找到进一步的阐述,这基本是所有现代主流语言的基础。会面向对象,所有的语言学起来特别快。 C++可以被广泛用于桌面端、服务器和嵌入式的编程,使用程度非常广泛,但是由于它的语法很难(主要是指针操作)、没有现成的SDK进行封装,所以并不是很适合用来写移动端的应用。 可以认为,C++什么都能干,它太基础了,效率是高级语言中最高的,但是术业有专攻,它并不是都适合写各个平台的应用。

    - [C++程序设计视频教程](C++ Programming | C++程序设计)

    2.3 C#

    C#是微软是2000年推出的在.NET平台上的编程语言,没有指针,集合了大多数面向对象语言的精髓,好学好用,效率也不低,是主流的windows桌面应用和部分windows服务器后台的编程语言。

    - [C#视频教程](C#编程-学堂在线慕课(MOOC)平台)

    2.4 Java

    Java和C#类似,差不多简单。但是Java是跨平台的,可以写桌面、移动(安卓)和后台服务器,用处非常广泛,框架也最多。

    - [Java视频教程](学堂在线-最大的中文慕课(MOOC)平台)

    2.5 html

    html和javascript、css等都是开发网页前端界面显示的语言,是很轻量级的。

    - [html等教程](Codecademy - learn to code, interactively, for free)

    2.6 php

    php是用来开发服务器后端的语言,非常好学好用,语法很简单。

    - [php教程](PHP 教程)

    2.7 python

    Python是一种脚本语言,执行效率很低,但是语法异常简单,c++写几十行的东西,它几行就可以搞定。Python理论上可以用在任何地方,但是基本上常用于后台服务器和一部分科学研究。作为脚本语言,Python是优秀的。

    - [python教程](Codecademy - learn to code, interactively, for free)

    - 推荐的一个教程:Python 3教程发布

    2.8 ASP.NET

    http://ASP.NEThttp://ASP.NET是微软出的写服务器后端与部分前端的框架。用C#和html编程。

    - [视频教程](ASP.NET基础实例教程-我要自学网)

    2.9 其他

    其他语言还有几十种,但是都不是很常用。这是不再介绍。 学会面向对象编程思想,走遍天下都不怕。

    3.工具

    3.1 Visual Studio

    微软出品的宇宙最强编程工具,没有之一。 VS可以被广泛用于桌面、服务器和移动端的编程,最新的VS也可以用来做安卓和iOS,其性能之彪悍功能之强大是宇宙第一。写C、C++、C#的天然平台,也可以用来写Python、html等。

    - [VS的官网](Visual Studio Home)

    3.2 Eclipse

    Eclipse是免费开源的软件。它是一个软件平台,配合丰富的插件,可以用来写Java、php、C++、Python等,用来写桌面、服务器应用。

    - [Eclipse官网](Eclipse - The Eclipse Foundation open source community website.)

    3.3 intellji IDEA

    Intellij IDEA是捷克Jetbrains公司出品的收费的编程软件。是Eclipse的替代品。可以把它叫做java界的Visual studio。用来开发基于Java的任何应用。Android Studio就是基于这个软件的框架进行开发的。

    - [intellij IDEA官网](JetBrains: Development Tools for Professionals and Teams)

    3.4 Android Studio

    开发安卓的集成工具。

    - [网站](baidu.com/link?)

    3.5 XCode

    XCode是用来开发iOS和Mac下的软件的,也就是说它只能运行在苹果电脑上。XCode可以编写的语言主要有C/C++,Objective-C以及swift等。其他XCode个人感觉并不是太优秀,有很多不如人意的地方,不过没办法,你想做苹果的东西只能用这个。JetBrains公司出了一个Mac下写苹果软件的IDE叫做AppCode,我也用过,体验还可以。不过话说回来,有官方的东西就有官方的支持,用第三方的难免会出现不必要的问题,最多也就当个备用吧。

    3.6 PyCharm

    PyCharm也是JetBrains公司出的专门用来写Python的IDE。它基本可以说是Python界的Visual Studio,想要的功能基本都有。更新也很频繁,目前我一直在用它。

    4.辅助

    4.1 数据库

    数据库是存储数据的媒介,所有后台数据交互的都必须有数据库参与。目前最常用的数据库有Oracle、SQL Server、MySQL、MongoDB等。数据库独立于编程语言,由特定的SQL语法进行支持。

    4.2 Github

    [Github](Build software better, together)是世界上最大的开源软件管理平台。本文就托管在github上。世界各地的程序员把他们写的各种类型各种语言的代码托管在github上实现共享,有利于软件行业的发展。git代码管理平台是现在最火的版本控制工具。 iOS、安卓等有很多有名的项目都是托管在github上的。

    4.3 MOOC

    这个主要是网络公开课。现在最火的受教育形式。 近几年,MOOC越来越火,课程的数量和质量都不断发展,给了我们足不出户就能领略世界大师风采的绝佳机会。本文有很多链接都是公开课的。推荐的不错的有:

    - [网易公开课](网易公开课),资源比较多,各个领域都有,里面有计算机板块,中国外国都有。上面说的MIT的算法,我们都是在上面学的,老师讲的特别好。另外它还有不断更新的TED视频,很值得一看。

    - [coursera](Coursera | Online Courses From Top Universities. Join for Free),斯坦福机器学习大牛Andrew Ng联合成立的,上面都是外国大牛校的视频。我研究生课程里的机器学习就是学的这上面的,不错。

    - [果壳MOOC学院](MOOC学院(慕课)| 发现全球在线好课),它只是一个公开课搜索中心,帮助你链接到各个mooc课程。

    - [学堂在线](学堂在线-最大的中文慕课(MOOC)平台),清华主导的,网站做的不错,课程质量很高,这个是要着重推荐的,我也是最近才发现,上面的计算机和数值方面课程不错。

    - [codecademy](Codecademy - learn to code, interactively, for free),这不是公开课网站,是一个手把手教你学习web语言的。这里有Ruby,python,html等热门web语言,而且教程设计丰富而有趣,感觉是学前端最好的地方了。

    - 网络资源:大牛的博客什么的,这方面我就没什么好推荐的了,看你的水平去发掘了。百度和google你是当然离不开的了。翻墙什么的你自己去弄吧,反正百度没有的东西,你可以去google,google也没有,你可以尝试一下用英文搜索,效果非常好!这里推荐stackoverflow网站,只要你有解决不了的问题,用英文上google搜,如果stackoverflow里有类似问题,恭喜你肯定能解决。

    - 书籍:我们计算机方面有很多经典的书,比如高德纳老爷爷的《计算机程序设计艺术》相信你一定听过,网上都有pdf下载,可以看一看。另外,我们这个方面像《XXX精通》等书太多了,而且基本都是大部头的,还能防身呢!这个推荐你能下pdf就下pdf,不然这么大,有个三五本就够你受的了。这些书都是当字典用的,千万不要从第一页码开始一页一页读!效率低而且你会发现没用。这都是你在遇到问题时去查的,不是让你真学的。

    展开全文
  • 1、实验楼:https://www.shiyanlou.com/ 实验楼的课程主要偏向...提供精选Python在线实践项目,无需配置本地环境(利用配置好的虚拟环境完成相应的项目实验),随时在线流畅使用编辑器,学习更高效。 ... ...慕课网是...

    1、实验楼:https://www.shiyanlou.com/

    实验楼的课程主要偏向后端开发(Python、C/C++、Linux、PHP、Java)、Linux 运维以及大数据等内容。提供精选Python在线实践项目,无需配置本地环境(利用配置好的虚拟环境完成相应的项目实验),随时在线流畅使用编辑器,学习更高效。

    2、慕课网:https://www.imooc.com/

    慕课网是一个专业的在线编程学习平台,对于新手来讲,视频比较容易入门。它上面的课程也是很全的,前端,后端,移动端,后端,大数据,UI 设计,这些课程一样都不缺少。所以想学什么都可以在这上面学。

    3、极客学院: https://www.jikexueyuan.com/

    极客学院的课程也是紧跟技术潮流,新技术出现时,可以及时推出相对应的课程,也让你很省心地了解关注。

    4、腾讯课堂:https://ke.qq.com/

    腾讯推出的专业在线教育平台,聚合大量优质教育机构和名师。

    5、网易云课:https://study.163.com/

    网易云课,一个专注职业技能提升的在线学习平台。

    6、优达学城:http://www.youdaxue.com/

    优达学城的课程内容是由 Google、Facebook、谷名企,以及腾讯、滴滴等国内一线互联网企业参与制作,涉及的领域是比较广泛的,从数据分析师到人工智能、深度学习、机器学习甚至无人驾驶等领域,具体看你的兴趣来选择。

    展开全文
  • 我是如何学习编程

    2020-01-12 09:50:30
    我是如何学习编程
  • 编程语言分类

    2019-01-23 10:05:13
    1. 桌面程序:Java、C++、C#、VB、C均可。 2. 网站服务器端开发:JSP(Java语法)...4. 智能手机程序:安卓使用Java,iPhone使用Objective-C 5. 底层、工具开发:C、C++ 6. 多功能脚本程序:Python、Perl、Ruby等等 ...
  • Scratch编程过关小游戏

    2020-07-23 23:32:37
    少儿编程第一课过关小游戏,简单两个功能实现。只用两个小函数去实现过关。
  • ninechapter美帝代码搬运工,资深面试官,微信公众号-九章算法(ninechapter)当你提出这个问题的时候,总有人会告诉你,你应该学习这个,学习那个,亦或者是刷题根本没用,你应该去做...对于一个编程菜鸟,很多事情都...
  • 15个编程好习惯

    2014-06-09 13:43:48
    这是国外程序员Al katib总结的一些编程习惯。 1. 动手编码之前,你需要对要编码实现的解决方案有一个正式的或粗略的设计。永远不要在没有任何设计的前提下就开始编码,除非所编代码不重要。 2. 优秀...
  •     视频中的小游戏,大家想不想来挑战一下,看看谁的分数最高,想挑战的就跟我一起用Scratch制作一款捕捉小...进入编程界面,将原始角色删除,并添加本次游戏所需角色(Mizone、小星星),并为了方便定位,...
  • 预览图;https://attach.52pojie.cn/forum/201905/21/000411qjusrvusmtjbuzmi.png
  • 编程可以这样学

    2020-07-21 20:01:17
    编程可以这样学》提出一种全新的学习理念,在我们去窥探各种语言或技术的细枝末节之前,老张会带着大家先去程序员的世界里遨游一圈:C语言只是用来写黑底白字的控制台程序吗?算法在游戏开发中有什么用?学校开设...
  • 如果觉得资源不错,友情转发,贵在分享!...枪战游戏少儿编程Scratch第四讲:射击游戏的制作,克隆的奥秘少儿编程第五讲:Scratch练习一坐标和移动少儿编程Scratch第六讲:抽奖游戏之造型、随机和广播少儿编程Scr...
  • Excel宏编程可以快速完成批量表格操作:复制粘贴、数据过滤等,宏代码基于VB语言实现,有基础的编程经验就能快速阅读。下面是我的学习笔记。 1. Excel VBA编辑界面 (进入路径: sheet名称 --> 鼠标右键菜单 ...
  • 本篇文章来和大家聊聊自学编程中的一些误区——这是我在 B 站上看了羊哥的一期视频后有感而发的文章。因为确实有很多读者也曾私信问过我这些方面的问题,很有代表性,所以我就结合自己的亲身体会来谈一谈,希望对小...
  • 本课程主要针对PyQT5中的界面部分(GUI)进行学习,分为三部分,包括初级GUI编程、进阶GUI编程和GUI编程实战。 初级GUI编程:从介绍编程环境搭建开始,然后分析最基础的单个窗口框架,接着介绍QT Designer,最后...
  • 来源:少儿编程入门教程 目录: scratch少儿编程系列一: Scratch零基础魔法编程(一)为什么你要学Scratch儿童编程 Scratch零基础魔法编程(二)来不及解释了,马上开始编程游戏 Scratch零基础魔法编程(三)...
1 2 3 4 5 ... 20
收藏数 3,183,614
精华内容 1,273,445
关键字:

编程