/*
?* 這是一篇偽代碼,用于向非專業(yè)人士解釋如何進入編程世界
?* 文章的整體結構贾惦,展示了大部分編程語言采用的標準寫法
?* 當前段落是一個注釋區(qū)胸梆,用來說明功能、聲明許可等
?*/
#include "《程序員的世界你會懂》之什么是程序員"
#include "《程序員的世界你會懂》之程序員的常用工具
function <a id="zbhj">準備環(huán)境</a>() {
- 整塊時間:進行系統(tǒng)性學習和開發(fā)须板,如晚上8點-12點
- 碎片時間:進行知識點回顧或做計劃碰镜,如等電梯、排隊時
- 清靜場地:如書房或陽臺习瑰,并告訴你的家人或朋友盡可能少的打擾你
- 遠離干擾:手機靜音并遠離10米以上绪颖,或干脆關機
- 拜個師傅:如果有一個可以帶你入門的朋友最好,可以少走很多彎路
- 尋求幫助:遇到問題時甜奄,應首選Google或百度柠横,解決不了的時候才選擇論壇或郵件
- 特殊情況:如果你選擇了一個犄角旮旯的方向,光顧論壇或訂閱郵件列表是優(yōu)選
}
function <a id="qdgj">清點工具</a>() {
- 思維圖:幫助整理思路课兄。Xmind
- 編輯器:文本是王道牍氛。EditPlus、UltraEdit烟阐、Vim等
- 瀏覽器:上網必備搬俊。Chrome、Firefox等
- 云筆記:可以在各個設備上編輯查看你的筆記蜒茄。有道云筆記唉擂、便簽、備忘錄等
- 項目/個人管理:推薦Tower+釘釘檀葛,二者簡直是絕配
}
function <a id="lqgn">理清概念</a>() {
- 編程語言
- 程序都是用編程語言編寫的玩祟,如同書是由文字書寫一樣
- 同一個程序可能由不同語言編寫,如同一本書里可能包含了中文和英文
- 常見的語言:C屿聋、Java卵凑、Objective-C庆聘、C++、C#勺卢、PHP等
- 操作系統(tǒng)
- 大的,有微軟的windows象对、蘋果的iOS黑忱、Linux、Android等
- 小的勒魔,有μC/OS-II等
- 看看《Orange S:一個操作系統(tǒng)的實現(xiàn)》也許能讓你心潮澎湃
- 網站
- 一個網站是需要服務器的
- 你訪問的某個網址甫煞,可以近似的認為標識了某地某個機房內的一臺服務器的名稱
- 你現(xiàn)在所看的網頁是由部署在服務器上的程序‘生產’出來,并通過網線‘傳輸’到你的瀏覽器上的
- 傳輸?shù)膬热菔且淮蠖延懈袷降淖址诰睿枰愕臑g覽器進行‘解釋’抚吠,于是你可以看到文字、圖片弟胀、視頻
- app
- Application的縮寫楷力,是指智能手機或平板上運行的應用程序
- 這些應用運行在操作系統(tǒng)上(多數(shù)是Android和iOS),類似windows電腦上的瀏覽器和視頻播放器
- 數(shù)據(jù)庫
- 可視為電子化的文件柜
- 常見的數(shù)據(jù)庫:MySQL孵户、Oracle萧朝、SQLite、Microsoft SQL Server等
- 數(shù)據(jù)庫里存放的都是數(shù)據(jù)(廢話)夏哭,對數(shù)據(jù)的操作主要有增刪查改
- 對數(shù)據(jù)庫操作同樣使用語言检柬,常用的數(shù)據(jù)庫語言為SQL,增刪查改操作對應著insert竖配、delete何址、select、update
- 數(shù)據(jù)庫并不可怕进胯,可怕的是里面的數(shù)據(jù)
- IP | 域名 | 網址
- IP是一臺計算機在網絡上的身份證號用爪,域名是為了方便人們稱呼這臺計算機而給它起的名字,一個域名可能對應多個網址
- 220.181.111.86是百度的IP龄减,baidu.com是域名项钮,mp3.baidu.com和www.baidu.com都是百度的網址
- DNS服務器可以將網址翻譯成IP地址
- 直觀的,windows下打開命令提示行希停,輸入 ping baidu.com即可
- 嵌入式
- 包含硬件和軟件兩部分烁巫,兩者兼并無較明確的界線
- 從硬到軟涉及到的知識部分依次為 硬件(各類設備/總線)→ 驅動 → 操作系統(tǒng) → 文件系統(tǒng) → 應用程序
- 涉及到的語言,除應用程序外其他基本為C和匯編宠能,應用程序則五花八門
}
function <a id="xzfx">選中方向</a>() {
- 這點很重要
- 0和1的世界太大了亚隙,四處放炮是不行滴
- 列幾個方向
}
function <a id="ksxxm">開始新項目</a>() {
- 實踐是學習的最佳途徑
- 找一個感興趣的點子棺蛛,用思維圖把它構想出來
- 找個行內的人幫你看下怔蚌,列一下需要哪些知識點
- 最好可以和行內的人一起合作
- 如果自己單干,推薦一種方式:網上找一篇類似《從零開始做xxxx》的文章旁赊,當然桦踊,xxx和你要做的項目差不多,跟著做
- 開始前先閱讀相應的知識點终畅,簡單的看籍胯,看兩天,了解大概其即可声离,在項目中不懂了再回去翻
}
function <a id="zbj">做筆記</a>() {
- 在云筆記上建幾個文件夾芒炼,將你需要學習的內容分門別類
- 記錄你的靈感、思路术徊、感想本刽、經驗
- 記錄你遇到的好文章和好項目,記住一定要看赠涮,沒有看過的東西最終都將與你無關
}
function <a id="xbk">寫博客</a>() {
- 堅持
}
function <a id="mkh">模塊化</a>() {
- 將代碼盡可能的模塊化子寓,在做多個項目的時候可以很方便的拿來用,避免重復造輪子
- 別人的代碼能用的就拿過來笋除,經歷一遍別人經歷過的痛苦是沒必要的斜友,當然注意保留別人的名字,攢人品也是很重要的
- 用版本控制工具管理你的代碼垃它,并上傳到云端鲜屏,github和bitbucket都是不錯的選擇,國內的也有類似的OSC
}
function <a id="fx">分享</a>() {
- 你的博客你的程序你的產品都可以分享給他人
- 當別人通過你的分享而解決了問題
- 當別人給你的分享帶來反饋
- 當別人分享你的分享
- 分享的快樂和成就感是杠杠杠杠的
}
//這同樣是一個注釋區(qū)国拇,稱為行注釋洛史,與之對應的是通過/* ... */是塊注釋,如文章開頭
//大部分的編程語言都會有一個main函數(shù)酱吝,意為程序的起始運行點
void main() {
準備環(huán)境();
清點工具();
理清概念();
選中方向();
//經過前面的準備過程也殖,接下來就會進入無限循環(huán)
??//這是一個漫長的過程,需要你靜下心來沉淀务热,沉淀忆嗜,再沉淀
??//當然己儒,在其中你會收獲無限的樂趣,還可以明白很多有關程序員笑話的梗:)
??while (true) {
開始新項目();
做筆記();
寫博客();
模塊化();
分享();
}
?return 0;
}