美文网首页程序人生首页投稿(暂停使用,暂停投稿)程序员
《程序员的世界你会懂》之如何成为一名业余程序员

《程序员的世界你会懂》之如何成为一名业余程序员

作者: bbdlg | 来源:发表于2016-07-28 11:58 被阅读398次

/*
 * 这是一篇伪代码,用于向非专业人士解释如何进入编程世界
 * 文章的整体结构,展示了大部分编程语言采用的标准写法
 * 当前段落是一个注释区,用来说明功能、声明许可等
 */

#include "《程序员的世界你会懂》之什么是程序员"
#include "《程序员的世界你会懂》之程序员的常用工具

function <a id="zbhj">准备环境</a>() {

  • 整块时间:进行系统性学习和开发,如晚上8点-12点
  • 碎片时间:进行知识点回顾或做计划,如等电梯、排队时
  • 清静场地:如书房或阳台,并告诉你的家人或朋友尽可能少的打扰你
  • 远离干扰:手机静音并远离10米以上,或干脆关机
  • 拜个师傅:如果有一个可以带你入门的朋友最好,可以少走很多弯路
  • 寻求帮助:遇到问题时,应首选Google或百度,解决不了的时候才选择论坛或邮件
  • 特殊情况:如果你选择了一个犄角旮旯的方向,光顾论坛或订阅邮件列表是优选

}

function <a id="qdgj">清点工具</a>() {

  • 思维图:帮助整理思路。Xmind
  • 编辑器:文本是王道。EditPlus、UltraEdit、Vim等
  • 浏览器:上网必备。ChromeFirefox
  • 云笔记:可以在各个设备上编辑查看你的笔记。有道云笔记、便签、备忘录等
  • 项目/个人管理:推荐Tower+钉钉,二者简直是绝配

}

function <a id="lqgn">理清概念</a>() {

  • 编程语言
    • 程序都是用编程语言编写的,如同书是由文字书写一样
    • 同一个程序可能由不同语言编写,如同一本书里可能包含了中文和英文
    • 常见的语言:C、Java、Objective-C、C++、C#、PHP等
  • 操作系统
  • 网站
    • 一个网站是需要服务器的
    • 你访问的某个网址,可以近似的认为标识了某地某个机房内的一台服务器的名称
    • 你现在所看的网页是由部署在服务器上的程序‘生产’出来,并通过网线‘传输’到你的浏览器上的
    • 传输的内容是一大堆有格式的字符,需要你的浏览器进行‘解释’,于是你可以看到文字、图片、视频
  • app
    • Application的缩写,是指智能手机或平板上运行的应用程序
    • 这些应用运行在操作系统上(多数是Android和iOS),类似windows电脑上的浏览器和视频播放器
  • 数据库
    • 可视为电子化的文件柜
    • 常见的数据库:MySQL、Oracle、SQLite、Microsoft SQL Server等
    • 数据库里存放的都是数据(废话),对数据的操作主要有增删查改
    • 对数据库操作同样使用语言,常用的数据库语言为SQL,增删查改操作对应着insert、delete、select、update
    • 数据库并不可怕,可怕的是里面的数据
  • IP | 域名 | 网址
    • IP是一台计算机在网络上的身份证号,域名是为了方便人们称呼这台计算机而给它起的名字,一个域名可能对应多个网址
    • 220.181.111.86是百度的IP,baidu.com是域名,mp3.baidu.comwww.baidu.com都是百度的网址
    • DNS服务器可以将网址翻译成IP地址
    • 直观的,windows下打开命令提示行,输入 ping baidu.com即可
  • 嵌入式
    • 包含硬件和软件两部分,两者兼并无较明确的界线
    • 从硬到软涉及到的知识部分依次为 硬件(各类设备/总线)→ 驱动 → 操作系统 → 文件系统 → 应用程序
    • 涉及到的语言,除应用程序外其他基本为C和汇编,应用程序则五花八门

}

function <a id="xzfx">选中方向</a>() {

  • 这点很重要
  • 0和1的世界太大了,四处放炮是不行滴
  • 列几个方向
    • 只是好奇。你可以离开了,平时多关注下业界新闻和博客过过瘾就好,比如36KrOSChina酷壳阮一峰的博客月光博客
    • 做一个可以放在手机或pad上运行的app
    • 做一个网站,或者自己搭个博客
    • 做一个有硬件载体的嵌入式设备,比如智能电子秤、防丢器等
    • 做一个电脑上运行的程序,比如windows版的QQ

}

function <a id="ksxxm">开始新项目</a>() {

  • 实践是学习的最佳途径
  • 找一个感兴趣的点子,用思维图把它构想出来
  • 找个行内的人帮你看下,列一下需要哪些知识点
  • 最好可以和行内的人一起合作
  • 如果自己单干,推荐一种方式:网上找一篇类似《从零开始做xxxx》的文章,当然,xxx和你要做的项目差不多,跟着做
  • 开始前先阅读相应的知识点,简单的看,看两天,了解大概其即可,在项目中不懂了再回去翻

}

function <a id="zbj">做笔记</a>() {

  • 在云笔记上建几个文件夹,将你需要学习的内容分门别类
  • 记录你的灵感、思路、感想、经验
  • 记录你遇到的好文章和好项目,记住一定要看,没有看过的东西最终都将与你无关

}

function <a id="xbk">写博客</a>() {

  • 坚持

}

function <a id="mkh">模块化</a>() {

  • 将代码尽可能的模块化,在做多个项目的时候可以很方便的拿来用,避免重复造轮子
  • 别人的代码能用的就拿过来,经历一遍别人经历过的痛苦是没必要的,当然注意保留别人的名字,攒人品也是很重要的
  • 用版本控制工具管理你的代码,并上传到云端,githubbitbucket都是不错的选择,国内的也有类似的OSC

}

function <a id="fx">分享</a>() {

  • 你的博客你的程序你的产品都可以分享给他人
  • 当别人通过你的分享而解决了问题
  • 当别人给你的分享带来反馈
  • 当别人分享你的分享
  • 分享的快乐和成就感是杠杠杠杠的

}

//这同样是一个注释区,称为行注释,与之对应的是通过/* ... */是块注释,如文章开头
//大部分的编程语言都会有一个main函数,意为程序的起始运行点
void main() {

准备环境();

清点工具();

理清概念();

选中方向();

//经过前面的准备过程,接下来就会进入无限循环
  //这是一个漫长的过程,需要你静下心来沉淀,沉淀,再沉淀
  //当然,在其中你会收获无限的乐趣,还可以明白很多有关程序员笑话的梗:)
  while (true) {

开始新项目();

做笔记();

写博客();

模块化();

分享();

}

 return 0;

}

相关文章

网友评论

  • 有窗和灯的小黑屋:能看懂Q_Q
    bbdlg: @有窗和灯的小黑屋 (๑• . •๑)
  • dfe147f4a102:下班想写程序 但没有动力 是因为爱不够吗
    bbdlg:@_v君 么么哒 就是酱紫的 明天祭出一篇Android开发入门 是关于爱和动力的 稍等哟
  • 梁同桌:你真的是业余的?
    比我当职业的都厉害,悲催
    bbdlg:@梁同桌 哈 这是写给几个想用代码实现创意的朋友的,至于我,也是代码专业户(๑• . •๑)
  • 4588e4274830:哈哈
    bbdlg:@代码描绘人生 (づ ̄ 3 ̄)づ

本文标题:《程序员的世界你会懂》之如何成为一名业余程序员

本文链接:https://www.haomeiwen.com/subject/pzkajttx.html