精华内容
下载资源
问答
  • 致 Python 初学

    万次阅读 多人点赞 2019-11-10 00:03:26
    欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力...开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你

    1. 前言

    欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你们。

    2. 明确学习目标,不急于求成,不好高骛远

    当下是一个喧嚣、浮躁的时代。我们总是被生活中大量涌现的热点所吸引,几乎没有深度阅读和思考的时间和机会。我始终认为,学习是需要沉下心来慢慢钻研的,是长期的;同时,学习不应该被赋予太多的功利色彩。一个Python 程序员的成长路线图应该是这样子的:基础语法–>语感训练–>课题练习–>分方向继续学习–>中级程序员–>拓展深度和广度–>高级程序员。
    在这里插入图片描述然而,很多新手的学习路线图却是这样子的:学完基础语法之后,不了解 http 协议和 Ajax 异步请求,就兴冲冲研究爬虫去了;或者,学完基础语法,就去搞视觉识别,连 OpenCV 的数据结构都看不懂;甚至,学完基础语法就直接研究神经网络,结果是重演了一遍从入门到放弃。
    在这里插入图片描述我给初学者的建议就是,不急于求成,不好高骛远,一步一步,稳扎稳打,功到自然成。不急于求成,可以避免走弯路,非但不会延缓你成长的速度,反倒会节省你的时间。不好高骛远,达成一个目标,再制定下一个目标,在连续的成功和进步中,建立起自信心,激发出更强的学习兴趣。

    3. 在开始学习 Python 之前,你需要做一些准备

    Now is better than never,
    Although never is often better than *right* now.

    这是Python之禅中的一句,翻译过来的意思是,做也许好过不做,但不假思索就动手还不如不做。的确,在开始学习 Python 之前,你需要了解的一些背景,做出一些选择,并在你的计算机上做好准备工作。

    2.1 Python 的各种发行版

    Python 是龟叔的独生子,但他有很多堂兄弟,比较有名的也有好几位。如果你不确定哪个对你更友好,我建议你选择嫡传的 Python——即便你将来需要和他的其他堂兄弟打交道,那也是熟门熟路。不建议初学者选择AnacondaPython 和 ActivePython,在我看来他们提供的便利不如给用户学习带来的麻烦多。

    Cpython

    CPython 属于 Python 参考实现方案,可算是所有其他 Python 衍生发行版的一套标准化版本。CPython 利用 C 语言编写而成,而其编写者包含多位 Python 语言顶级决策层中的核心人员。CPython 在优化方面表现得最为保守。当然,这并不是缺点,而是设计取向。Python 的维护者们希望将 CPython 打造为 Python 最具广泛兼容性与标准化的实现方案。CPython 最适合对 Python 标准的兼容性与一致性要求较高的用户。此外,CPython 同样适用于希望以最基本方式使用 Python并愿意为此放弃某些便捷性的专业人士。

    Anaconda Python

    Anaconda 源自 Anaconda 公司之手(原名为 Continuum Analytics),其设计目标在于服务那些需要由商业供应商提供支持且具备企业支持服务的 Python 开发者。Anaconda Python 的主要用例包括数学、统计学、工程、数据分析、机器学习以及其他相关应用。Anaconda 捆绑有 Python 商业与科学使用场景当中的各类常用库——包括 SciPy、NumPy 以及 Numba 等等,同时通过一套定制化软件包管理系统提供更多库访问能力。

    ActivePython

    与Anaconda类似,ActivePython同样由营利性企业创建及维护——ActiveState公司。该公司还在销售多种语言运行时以及多语言Komodo IDE。ActivePython主要面向企业用户与数据科学家——即希望使用Python语言,但又不愿把大量精力浪费在Python的组装与管理方面。ActivePython使用Python中的常规pip软件包管理器,但同时亦以认证压缩包的形式提供数百套通用库,外加英特尔数学核心库等其他一些具有第三方依赖关系的公共库。

    PyPy

    PyPy 属于CPython解释器的替代品,其利用即时(JIT)编译以加速Python程序的执行。根据实际执行的任务情况,其性能提升可能非常显著。人们对于Python——特别是CPython的抱怨之声,主要围绕其速度表现展开。在默认情况下,Python的运行速度远不及C语言——差距甚至可能达到数百倍。PyPy JIT将Python代码编译为机器语言,从而带来平均7.7倍于CPython的运行速度。在某些特定任务中,其提速效果能够达到50倍。

    Jython

    JVM(Java虚拟机)能够作为除Java之外的多种语言的运行时选项。这份长的名单包括Groovy、Scala、Clojure、Kotlin、Python以及——没错,当然还有Jython 。Jython最大的弊端在于其仅支持Python的2.x版本。目前对Python 3.x版本的支持能力尚在开发当中,但仍需要相当一段时间。当下,还没有任何相关版本放出。

    IronPython

    类似于Jython的JVM上Python实现方案定位,IronPython属于一套立足.Net运行时——或者CLR(公共语言运行时)——的Python实现方案。IronPython利用CLR的DLR(动态语言运行时)以允许Python程序以等同于CPython的动态水平实现运行。与Jython类似,IronPython目前只支持Python 2.x版本。不过IronPython 3.x实现方案已经处于紧锣密鼓的开发当中。

    2.2 安装 Python

    从 Python 官网下载时,请注意选择正确的版本。如果是用于学习,下载最新版没有问题,如果是用于生产,则要考虑你开发需要的第三方模块是否支持最新版的 Python。安装时不要忘记勾选最下面的两个复选框,否则会给后续的模块安装带来一些麻烦。推荐使用默认方式安装。
    在这里插入图片描述

    2.3 选择一款趁手的开发工具

    学习一种编程语言,首先要找一款合用的集成开发工具,似乎是自然而然的想法。为什么不呢?IDE可以自动补齐,可以一键运行,还可以断点调试。使用IDE开发项目,就像驾驶一辆内饰豪华的汽车,尽情享受驾驶的乐趣就好了,谁还去关心引擎盖里面发动机是如何工作的呢?我的年轻同事们也都是IDE的拥趸,最初使用pycharm,后来是时下大热的vscode。

    可是,我始终认为,编程就像是驾驶,程序员就是司机,而且是职业司机,不是把驾驶当成通勤技能的各色白领金领。既然是职业司机,就不能满足于打着领结、戴着白手套驾驶内饰豪华、配置高端的汽车,而是必须具备打开引擎盖子维修和保养的能力。

    基于这个观点,我不建议初学者一开始就使用集成开发工具——至少,在开始第一个星期不要使用IDE。对于python这样一种解释型的脚本语言,一款趁手的编辑器就足够了。linux平台上,vim或者emacs都足够好(如果你通晓二者或者其中之一的话,请接受我的敬意);windows平台上,我推荐使用notepad++。python初学者使用编辑器而非IDE的好处是:

    1. 专注于python本身,而不是被工具使用问题所困扰。君不见,知乎上关于pycharm和vscode的使用说明、常见问题的解决方案,多得几乎超过了讨论python本身
    2. 手工运行代码,可以更直观、更深刻地了解脚本的解释执行过程
    3. 手工调试代码,有助于代码优化,提高代码把控能力
    4. 可以更好地使用pip安装和管理第三方模块

    3. 习惯使用IDLE,这是学习python最好的方式

    解释型语言的优势,就是可以写一句执行一句,想到哪儿写到哪儿,不必像编译型语言那样得把程序全部写完,编译成功后才能运行。我特别喜欢使用python的IDLE,甚至拿它当计算器用。很多时候,我用IDLE验证代码的写法是否正确,查看模块是否安装成功以及版本号。IDLE支持tab键自动补齐,我经常用这个功能查看某个对象的方法和属性。

    >>> import numpy as np
    >>> np.__version__
    '1.17.0'
    >>> np.hypot(3,4)
    5.0
    >>> def factorial(n): # 计算n的阶乘
    	if n == 0: # 递归出口
    		return 1
    	return n*factorial(n-1) # 向递归出口方向靠近的自身调用
    
    >>> factorial(5)
    120
    >>> _*2-100
    140
    

    小技巧

    1. tab键自动补齐
    2. 光标移动到执行过的语句上敲击回车,可以重复这个命令
    3. 下划线(_)可以获取最后一次执行结果

    实际上,IDLE就是一个IDE,你可以用它来创建或打开.py脚本文件,可以编辑、运行和调试。

    在这里插入图片描述

    4. 严格遵从编码规范

    Linux 平台上,一个 python 源码文件应该以下部分组成。Windows 平台上,可以省略第一项。

    1. 解释器声明
    2. 编码格式声明
    3. 模块注释或文档字符串
    4. 模块导入
    5. 常量和全局变量声明
    6. 顶级定义(函数或类定义)
    7. 执行代码

    附上一个 demo,仅供参考。更详细的编码规范,请参考拙作《我的 Python 编码规范》

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    
    
    """通常这里是关于本文档的说明(docstring),须以半角的句号、 问号或惊叹号结尾!
    
    本行之前应当空一行,继续完成关于本文档的说明
    如果文档说明可以在一行内结束,结尾的三个双引号不需要换行;否则,就要像下面这样
    """
    
    
    import os, time
    import datetime
    import math
    
    import numpy as np
    import xlrd, xlwt, xlutils
    
    import youth_mongodb
    import youth_curl
    
    
    BASE_PATH = r"d:\YouthGit"
    LOG_FILE = u"运行日志.txt"
    
    
    class GameRoom(object):
        """对局室"""
        
        def __init__(self, name, limit=100, **kwds):
            """构造函数!
            
            name        对局室名字
            limit       人数上限
            kwds        参数字典
            """
            
            pass
    
    
    def craete_and_start():
        """创建并启动对局室"""
        
        pass
    
    
    if __name__ == '__main__':
        # 开启游戏服务
        start()
    

    5. 代码的运行、调试

    如果你使用的集成开发工具,那么代码的运行和调试,就完全依赖于工具了。如果你使用编辑器开写代码,那就需要手工运行和调试代码。运行代码分成两步:

    第1步,打开一个命令行窗口,路径切换到脚本所在的文件夹。我习惯在脚本所在窗口的空白位置(确保没有选中任何对象),按下shift键点击鼠标右键,在弹出的菜单中选择打开Powershell窗口。如下图所示。
    在这里插入图片描述
    第2步,输入python+空格+脚本文件名,回车即可运行。输入脚本文件名时,按tab可以自动补齐。脚本的运行信息、错误信息、运行结果等,都可以显示在这个窗口中。这是最原始的信息。你在其他开发工具中看到信息,都是对这些信息的再加工。

    当然,很多编辑器也支持自定义运行命令,可以实现一键运行python脚本。以Notdpan++为例,点击“运行”->“运行”菜单,在弹出的窗口中输入:

    cmd /k cd /d “$(CURRENT_DIRECTORY)” & python “$(FULL_CURRENT_PATH)” & echo. & pause & exit

    因为转义缘故,复制该命令的话,请检查$符号前面是否有\符号,如有,请删除。接下来,点击“保存”按钮,在弹出的窗口中输入新增命令的名称,比如PyRun,定义快捷键,最后点击“确定”按钮。
    在这里插入图片描述
    完成以上设置后,就可以在Notepad++中使用菜单命令或者快捷键运行Python代码了。

    手工调试代码的手段不多,除了 print 信息,几乎只有把调试信息写成调试文件了。听起来,好像问题很严重,其实只是理念和取向不同而已。反过来想,手段单一,不恰好意味着简单、简明吗?十几年来,我一直使用 print 调试,坚信没有比它更好的了。

    5. 模块管理

    在python语言的发展过程中,安装和管理第三方模块的方法也历经变化。现在,我们终于等来了pip这个近乎完美的工具。pip除了安装(install)和删除(uninstall)这两大功能,还可以指定模块的安装版本(无需预先删除当前已安装版本),可以显示所有已安装的模块,还可以通过 upgrade 自主升级。

    很多同学在使用pip时会遇到各种各样稀奇古怪的问题,我在这里解释一下:

    5.1 同时安装了py2/py3

    同时安装了py2/py3,将会存在多个版本的pip.exe,你如果直接运行:

    pip install <模块名>

    则有可能因为pip.exe版本不对而出错。正确的做法是指定python版本,-m是python解释器的参数,意思是把pip模块做为脚本运行,完整命令如下:

    py -3 -m pip install <模块名>

    5.2 使用Anaconda,或者通过IDE来安装模块

    如果你使用的是Anaconda Python,或者你是通过IDE来安装模块,则需要检查它们的配置和设置,情况各有不同,没有统一的解决方案。

    5.3 仅安装了py2 或 py3

    如果你的计算机只安装了py2 或者 py3,那么上面两种安装方法应该都没有问题。如果你的电脑找不到pip.exe文件,则可以使用这个命令生成:

    python -m ensurepip

    5.4 pip应用演示

    下面,就以同时安装了py2/py3的计算机为例(如果只安装了py2或py3,需要将下面演示中的py -3替换成python),演示pip模块的用法。不管任何情况,我都建议使用-m参数调用pip模块,而不是直接使用 pip.exe 安装模块。

    # 虽然可以这样使用pip安装模块(以numpy为例)
    PS D:\XufiveGit\wxgl> pip install numpy
    
    # 但我建议这样使用pip
    PS D:\XufiveGit\wxgl> py -3 -m pip install numpy
    
    # 删除模块
    PS D:\XufiveGit\wxgl> py -3 -m pip uninstall numpy
    
    # 安装模块,指定版本
    PS D:\XufiveGit\wxgl> py -3 -m pip install numpy=1.15.0
    
    # 自主升级
    PS D:\XufiveGit\wxgl> py -3 -m pip install --upgrade pip
    
    # 显示已安装的模块
    PS D:\XufiveGit\wxgl> py -3 -m pip list
    Package           Version
    ----------------- -----------
    -pencv-python     4.1.1
    argh              0.26.2
    attrs             19.1.0
    Automat           0.7.0
    basemap           1.2.0
    beautifulsoup4    4.6.3
    bleach            3.1.0
    cefpython3        66.0
    ... ...
    

    pip也用来安装本地whl文件:

    PS D:\PyPackage\py3> py -3 -m pip install .\basemap-1.2.0-cp37-cp37m-win_amd64.whl
    

    5.5 模块仓库

    如果你需要下载python模块,这里是我见过的最全、最稳定的python模块仓库,由加州大学欧文分校荧光动力学实验室创建并维护。

    5.4 发布自己的模块安装包

    如果你的很多个项目中,都会用到你自己的某些模块,那么,把这些模块做成安装包,安装到你的开发环境里,可能是最佳选择。拙作《学习笔记:发布自己的python模块安装包》对此有详细说明。


    后记

    本文发表后,读者反响强烈,访问量很快超过10万人次。出版社的朋友建议我,不妨将十多年来的Python使用经验整理一下,结集出版,分享给更多需要的人。这是一个很不错的想法,我立即付诸行动。现在,这本《Python高手修炼之道》终于正式出版,并在京东网和当当网发售。读者可通过以下任一渠道购买(扫描或长按识别二维码)。

    在这里插入图片描述

    渠道一:京东自营图书

    渠道二:当当自营图书

    渠道三:作者签名

    • 关注公众号“Python作业辅导员”
    • 回复“Python高手修炼之道”,即可收到如何购买签名版的说明

    在这里插入图片描述

    展开全文
  • 初学计算机语言者(C语言,C++,java,python,C#)

    万次阅读 多人点赞 2020-11-21 00:54:08
    初学计算机语言者(C语言,C++,java,pytion,C#) 作为大二学长,我已经学计算机语言学了一年了,学了C和C++,现在在学JAVA,最近挺多人来问我C和C++的问题,颇有挺多感触,C期末考90多C++98,虽然不能说教你们很多...

    初学计算机语言者(C语言,C++,java,python,C#)

    作为大二学长,我已经学计算机语言学了一年了,学了C和C++,现在在学JAVA,最近挺多人来问我C和C++的问题,颇有挺多感触,C期末考90多C++98,虽然不能说教你们很多东西,但是还是有点东西可以和作为初学者的你们说的。
    学一门计算机语言,最重要的是要坚持学下去,跟不上老师的课程不要紧,因为我也不怎么跟的上,跟不上,那怎么办,只能自学呗!B站上不挺多教程的吗?《我要自学网》也是一个资源,反正想学肯定有很多方法学的,学的过程中的确挺难顶的,慢慢啃,建议买一本书谭浩强写的C语言和C++都对初学者挺友善的,讲的挺细的,看完整本书,没错,就是看完整本书,不能说你以后编程不会出错,但是至少找的出是为什么错,不会一头雾水不知道为什么错,至少语言这关我们是过的了了。

    学会了语言了,相当于会说活了,就应该学怎么去说好话了,也就是谭浩强说的程序=算法+语言(好像是这样,有点忘了)反正就是程序不单单是语言,还有算法,初学者一开始并不知道算法是什么东东(今天有个小朋友还不知道自己学的是C语言!!!C语言和C++语言是不一样的)算法就是做一个问题的过程,比如问,把大象放进冰箱需要几步,1.打开冰箱 2.把大象放进去 3.把冰箱关上 描述出来的就是算法,用计算机语言写出来的算法就是程序了,这就是算法,他说算法是程序的灵魂,的确,语言就那么多,但是算法是无穷无尽的,就像你去一个地方,是有无数种路线到达的,所以就有了最优算法,耗时短,占用空间小的算法。

    我在学C语言的时候,一直扣那些字眼,什么叫复用性啊,什么什么的,这些初学的时候没必要去扣,一直学下去你就会慢慢理解了。

    还有,请未来的程序员们学习一下百度,有啥问题先百度,百度上有千千万万种解释,百度解决不了的,可能人都莫得办法解决,百度看不懂的再找人问,这是个好习惯,因为大学,如果是认真学习的人,都很忙,不是说没空搭理你,只是要抽出时间来回一个人的信息,影响效率,可能一个早上都没学到什么,特别是在打代码的时候,打代码是连贯性的,不能中断的,所以朋友们请找到足够的时间再去打代码,我一般是用晚上的时间来打代码,洗个澡之后精神气爽,个人习惯。

    百度上搜的时候注意关键词,可以直接把那道算法题直接搜,一般来说都有朋友已经写好了详细过程,可以去尝试一下能不能看懂,遇到编译错误的时候,可以直接复制错误的提示代码搜索,也会找的到解决方法。
    反正作为大学生,如果你连百度都不会用的话,你真的比那些会用的人落后很多。
    还有一个个人习惯,希望朋友们可以采纳,就是从大一起就建立一个文件夹,存好大学四年做的所有你觉得以后可能用的到的东西

    在这里插入图片描述
    在这里插入图片描述

    我大一的所有文件我一直都保留着,不管以后有没有用,都方便自己查找,可以在用记事本记笔记。

    最后给大家推荐几个网站,可以多练算法,参加竞赛,希望你们选择了这个专业,就好好坚持下去,不知道以后能不能有好的工作,但是至少自己不会埋怨自己大学不学习,没努力!
    在这里插入图片描述

    判题网站
    牛客网:https://www.nowcoder.com/
    PTA:https://pintia.cn/problem-sets?tab=1
    vjudge:https://vjudge.net/contest/#overview
    NEUQ:http://newoj.acmclub.cn/
    编译平台

    1. DEVc++

    (蓝桥杯专用软件)
    个人觉得初学者用挺好,学一下调试等功能,找不出bug的时候就用DEVC++

    1. VScode

    (可视化特别好看)
    用了一段时间DEVC++就不喜欢那个界面了,就换了VScode,这个界面适合程序员的我们

    1. VS2016

    (企业化软件)
    这个挺高级的,哈哈哈哈,没怎么用

    JAVA的eclipse
    html的DW

    展开全文
  • wxWidgets初学者导引

    千次下载 热门讨论 2014-05-18 17:20:29
    针对初学者起步学习困难的实际,提供了一个学习方案,帮助C++初者提升学习能力,用CodeBlocks、wxWidgets、wxSmith开发出C++ GUI(图形用户界面)的应用程序。该资源网络版在...
  • selenium初学者指南

    热门讨论 2014-03-20 10:00:04
    对于初学selenium的你来说《selenium初学者指南》是一本很不错的书,建议了解!
  • JavaScript初学笔记总汇

    万次阅读 2018-08-28 11:21:17
    初学JavaScript之——JavaScript变量作用域 初学JavaScript之——JavaScript数组 初学JavaScript之数组练习笔记 初学JavaScript之函数和闭包笔记 初学JavaScript之arguments、caller、callee、call、apply理解 初学...
    展开全文
  • 初学者最容易学的六种编程语言

    万次阅读 多人点赞 2018-06-27 10:28:32
    下面是为大家介绍初学者,最容掌握的六种编程语言。1.JavaScript可别将JavaScript与Java混为一谈。Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,即使是开发简单的程序,也必须设计对象;而JavaScript...
    学编程关键是要找到一种合适的语言。下面是为大家介绍初学者,最容掌握的六种编程语言。

    1.JavaScript

    编程

    可别将JavaScript与Java混为一谈。Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,即使是开发简单的程序,也必须设计对象;而JavaScript是一种直译式脚本语言,它本身提供了非常丰富的内部对象供设计人员使用。JS之所以特别受欢迎,是由于它是跨平台的。由于JS本身在浏览器里面运行,你甚至不需要编译器。只需要一款笔记本应用程序或Sublime Text就可以编写了。

    如果,你想从事Web开发,那么JavaScript就是一种出色的入门级语言。对初学者来说,JavaScript是比较宽容和动态类型(弱类型)的编程语言。此外,JS语法类似C的语法,所以学习JS让你可以在编程领域继续深造,比如学习更难的编程语言C++。

    不过Matthew Mombrea等一些人士认为,JavaScript实际上是一种糟糕的入门级语言。Mombrea认为,JS是面向对象编程(OOP)方面的就是一个糟糕例子,这一点其实已经路人皆知。另外,虽然JS是弱类型语言并且有助于在编程时提高效率,但是直到运行时才会发现错误。他声称,如果你想要以软件开发为业,JavaScript不是好的起点。但是JS作为通向编程世界的一种入门级语言,它还是个不错的选择。

    用途:

    • Web开发

    优点:

    • 跨平台兼容
    • 不需要编译器
    • 便于进而学习其他语言

    缺点:

    • OOP方面的糟糕例子
    • 弱类型语言
    • 难以调试

    2.Ruby on Rails

    编程

    Ruby on Rails最大的优点是易于阅读,这对缺乏编程经验的人更易于掌握。Ruby是一种动态、面向对象的脚本语言,它被大量应用于Web开发。包括Groupon和GitHub在内的网站都在各自的后端上使用Ruby。

    由于不需要学习大量命令,Ruby学起来更容易一点。虽然Ruby是一种框架,但是它汇集了Ruby快捷键,并且许多培训班都在教Ruby on Rails。

    它对初学者来说堪称完美。此外,正如One Month网站指出的,有许多初创公司在招聘Ruby on Rails开发人员,即便你只有入门级经验,也可能找到一份不错的工作。

    用途:

    • Web开发

    优点:

    • 广泛使用
    • 汇集快捷键
    • 就业市场看好

    缺点:

    • Ruby on Rails基本上是一套快捷键

    3.Python

    编程

    Python对初学者来说也是一个入门级编程语言。Python可用于Web开发的应用程序和桌面应用程序,这种动态语言支持OOP编程、过程式编程和函数式编程。

    另外,它是开源语言,这意味着它可以免费入手,有着相当活跃的社区。Joel Lee细述了为何Python很有用(http://www.makeuseof.com/tag/reasons-python-programming-not-useless/)。

    不过,作为一种入门级编程语言而言,Python有点复杂。比如说,要保持一定的命名和缩进,都是很重要的细节方面。但是考虑到它的灵活性和庞大社区,Python对初学者来说仍是一种易学的编程语言。

    用途:

    • Web开发
    • 应用程序开发

    优点:

    • 用于桌面和Web程序
    • 开源

    缺点:

    • 有特定的要求,比如规范的命令约定

    4.Java

    编程

    Java仍是历史最悠久的编程语言之一。Java可谓是Web应用程序、桌面程序、操作系统及更多系统的立足之本。这种面向对象、基于类的编程语言广泛使用;此外,它也是最受欢迎的语言之一。

    不过尽管广泛使用、人气超高,但是Java与其他入门级语言相提并论时,显得稍为复杂一点。Java的语法主要来自C和C++之类的语言,所以许多编程学习和强化培训班都是从C/C++开始教起,然后再教Java。如果,你在寻找一些Java应用程序例子?不妨看看这五个网站(http://www.makeuseof.com/tag/top-5-websites-for-java-application-examples/)。

    然而,Java也能迫使程序员从程序的角度来思考问题。因此,你必须考虑计算机是如何处理信息的。由于在分析编程知识方面打下坚实的基础,Java对初学者来说仍是一种很棒的编程语言。

    用途:

    • Web开发
    • 应用程序开发

    优点:

    • 非常流行
    • 一种历史悠久的语言
    • 资源丰富
    • 编程挑战建立了稳定的编程基础

    缺点:

    • 语法来自C/C++,所以从C/C++入手可能更好
    • 需要非常注重分析的思维

    5.C/C++

    编程

    C和C++都是优秀的入门编程语言。另外,借助这些网站(http://www.makeuseof.com/tag/3-websites-started-learning-programming-language/),你可以很快入手C和C++ 。

    如果你对游戏开发很有兴趣,C++是一种优秀的入门语言,因为除了Web开发应用程序、移动应用程序和桌面应用程序外,它还经常用于开发游戏和游戏引擎。

    C和C++都不仅仅为编程提供了入门知识,还为整个计算机学提供了入门知识。即便你将注意力集中在其他编程语言上,C/C++提供的基础性知识也很有价值。

    不过,C++在最初阶段对初学者来说可能颇具挑战性。如果你能够克服这个困难,那么将会大有回报。

    用途:

    • 应用程序开发

    优点:

    • 出色的计算机学基础
    • 适合软件和游戏开发

    缺点:

    • C++要比C难学一点

    6.C#

    C#对初学者来说是个很好的选择。启动时间相当短:只要下载Visual Studio Express,即可全面安装所有必要的元素,比如SQL Express。C#可以用途很多,从Web开发到控制台应用程序等等。语法基于C,所以与C++和C一样,它也提供了出色的计算机学基础。

    然而,Visual Studio确实拥有自动完成功能和自动生成的项目文件等方面,C#可能比较复杂,不像在C和Ruby等语言中有多个编译器和解释器。但是C#有易于使用的IDE以及广泛的用途,C#也是初学者学习编程不错的选择。

    用途:

    • 应用程序开发

    优点:

    • 广泛使用
    • Visual Studio让启动很简单
    • 出色的计算机学基础
    • 易于使用的IDE

    缺点:

    • 复杂的编译器

    结束语

    本文不见HTML的身影,你可能会问:为什么不介绍这种语言?考虑到HTML学起来极容易,常常很多中学都在教这种语言,实际上,HTML也是本人所学的第一种语言;在短短几小时内,我就由一个菜鸟变成水平相当高。正如许多人所知,HTML是一种标记语言,而不是一种编程语言。所以,很遗憾,它不是完全符合这个标准。

    不过,HTML适用于广泛领域,因此,对初学者来说HTML是一种简易的语言(不是编程语言),HTML还是值得一提。HTML广泛用于Web开发,因此你可以在此基础上学习CSS (与HTML一样,CSS同样不是一种真正的编程语言),最后再学习像JavaScript这些标准的编程语言。

    展开全文
  • Hibernate初学

    千次阅读 2010-05-16 13:29:00
    初学Hibernate感觉很陌生,看来自己的能力是不行了哦。或许前面的内容在大学都学过吧,显得比较简单。Hibernate是操作数据库的开源框架,虽然实现过程很简单,但是里面涉及的原理很深奥,好好加油学吧
  • 致每一位Java初学

    千次阅读 多人点赞 2020-01-08 20:36:17
    致Java初学者 前言 ​ 能看到这篇文章的朋友,应该都或多或少的了解Java,也许你现在是个菜鸟还在成长的路上。再此期间你一定遇到了很多困惑疑虑,对未来的学习方向感到很迷惑。作为过来人我非常了解你们现在的处境...
  • Python初学目录

    千次阅读 2018-07-24 21:13:58
    1.Python初学简介:点击打开链接 2.Python 安装环境:点击打开链接 3.Python 文本编辑器 解释器介绍即安装:点击打开链接 4.IDE工具安装、汉化与使用(Python代码运行助手链接网站方法):点击打开链接 重要 5...
  • 初学C语言的编程环境安装及配置-Visual Studio 2017

    万次阅读 多人点赞 2018-10-09 12:22:02
    初学C语言的编程环境安装及配置-VS201 Visual Studio 概述 Microsoft Visual Studio 是美国微软公司的开发工具包系列产品。VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如...
  • Python编程初学者指南.pdf
  • LINUX SHELL编程从初学到精通

    千次下载 热门讨论 2012-12-25 16:27:13
    LINUX.SHELL编程从初学到精通,华清远见培训中心
  • Java初学之人机猜拳游戏

    万次阅读 2019-07-05 20:52:28
    Java初学之人机猜拳游戏 1、要求 11.任务 a)完成人机猜拳互动游戏的开发 1.2.主要功能 a)选取对战角色 b)猜拳 c)记录分数 1.3.需求说明 a)分析业务 b)抽象出类、类的特征和行为 1.4.实现思路: a)分析...
  • C语言初学者代码

    千次阅读 2016-10-21 22:38:51
    初学者集锦
  • Python初学心得体会

    千次阅读 2018-05-19 13:13:28
    Python初学心得体会 此博仅用于记录个人初学python一些常用知识点。 目录 Python初学心得体会 目录 在字符串中嵌入双引号 在字符串中嵌入双引号 具体有两种方法 1. 利用反斜杠\对双引号进行...
  • Vue slot-scope的理解(适合初学者)

    万次阅读 多人点赞 2018-07-27 16:32:04
    百度上已经有很多的关于slot-scope的文章,但我感觉都是那些以前没学好,又回头学的人,他们都使用了.Vue文件,我觉得有点不适合初学者,所以我就写一篇适合初学者的。  先抛例程: &lt;!DOCTYPE html&...
  • AD20.0.13初学

    千次阅读 2020-10-04 20:38:39
    AD20.0.13初学 AD初学本文章旨在总结备份、方便以后查询,由于是个人总结,如有不对,欢迎指正;另外,内容大部分来自网络、书籍、和各类手册,如若侵权请告知,马上删帖致歉。 1.如何向AD中加入封装库 点击右侧...
  • 初学者到底该选择什么RTOS?

    千次阅读 2019-08-21 20:04:54
    前天的推文中,有读者问我,作为初学者到底该选择什么RTOS来学习? 答案 作为一个深入了解过rtos内核实现的我,先给出个回答吧: 选择越简单的操作系统内核越好 rtos必须是国内的! 其实我个人首推TencentOS tiny,...
  • cad制图初学入门

    千次阅读 2019-09-18 06:10:21
    初学者如何自学cad呢?想自学点小技能的新人们,是不是经常苦于不知道怎么入门学习CAD?问题不难克服,只要你够奋发努力,三天就能入门CAD,15天玩转cad!  一:明确目标。  首先你要明确自学cad是为了什么,是好玩...
  • Servlet,JSP和Spring MVC 初学指南源码
  • java小项目 适合初学

    热门讨论 2011-12-18 16:25:12
    好不容易找到的15个适合初学者的小JAVA视频,里面有计算器什么的,挺不错的,适合新手练练手
  • 初学者如何从零开始学习人工智能?看完你就懂了

    万次阅读 多人点赞 2017-03-09 10:06:56
    链接:oschina.net/news/78629/...此文是想要进入人工智能这个领域、但不知道从哪里开始的初学者最佳的学习资源列表。 一、机器学习 有关机器学习领域的最佳介绍,请观看Coursera的Andrew Ng机器学习课程
  • 地方
  • Python初学教程集合

    千次阅读 2017-01-12 16:16:39
    Python初学教程持续更新 1. 简明python教程 2. Python快速教程 3. 廖雪峰Python教程
  • 初学机器学习,第一步是做一个简单的手写数字识别,我选用的是MNIST数据集(用其他数据集也可以,原理都差不多),算法是KNN(下载库直接调用函数,算法的具体实现没有过多关心)。在网上也看到过MNIST数据集的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 251,485
精华内容 100,594
关键字:

初学