㈠ 課程內容框架
一 課程標準的基本框架是什麼
《 XXXX 》課程標准
課程編號: (參照我校各專業人才培養方案及教學計劃上編制的) 課程類型: (專業必修課/公共必修課/教育必修課)
— 1 —
學 時: XX 學 分: XX 適用對象: XX
一、課程定位 (本門課程在該專業中的地位及本門課程的主要任務) 二、課程設計
1.課程設計理念 (建議以「就業面向崗位」的需求為中心,以培養學生XXXX能力為依據設計,應
充分考慮到專業崗位的特點,盡可能的滿足學生的就業需要,兼顧學生就業後持續發展的可能。)
2.課程設計思路
三、能力目標
1.社會能力 2.專業能力 3.方法能力
四、學習目標 五、學習情境
1.學習情境劃分及學時分配(課程總標准)
學習情境劃分及學時分配如表1所示。
表1:學習情境劃分及學時分配
2.學習情境教學設計(課程章、節標准)(每節一個表格)
表2: 學習情境1: XXXXXXX(節名稱)
學習情境2:XXXXXX
學習情境3:XXXXXX …………
六、教材和教參選用
1.推薦使用教材:(名稱、出版社、版次) 2.參考資料;(名稱、作者等。不限數量)
七、考核評價要求
1、評價內容及方式(建議平時過程管理與期末測評相結合,平時成績計40%,期末計60%) 2.評價標准
八、教學資源要求
1、教學設備條件 2、教師團隊
二 什麼是課程框架問題
資料卡片(願與各位同學共享):
課程框架問題包括基本問題,單元問題和內容問題。單元問題:
反映了基本的概念,
指向規律的核心;在內容範疇提出了重要的問題沒有單一的,明顯「正確」的答案。
基本問題:
能夠激發學生的興趣,內容問題,直接支持內容和學習目標,有特定的「正確」的答案
「在問題的解決,概念的理解和批評反思中,技術的應用是非常有效的。」
「利用技術,學生可花更多時間創新策略去解決復雜的問題和增強更高的理解能力。」
在一個持續一年的社會科學研究中,若研究的范圍包括了諸如世界探險、工業革命、第二次世界大戰等,它會是一個基本問題。
在交叉學科的研究中如語言藝術/社會科學研究,我們探討問題的不同側面,它也可以成為一個基本問題。
在研究一個特定的項目如「進化」時,它也可以成為一個單元問題
內容問題不同於單元問題和基本問題,大多涉及的是事實而不是該事實的闡釋,都有明確的答案。
建構課程框架問題的提示:
開始去做…不要擔心它的技巧和語言,重點是頭腦風暴.
你先以陳述的方式把問題寫下來,然後把它修改為疑問句。
如果需要的話,用成人的語言把基本意思寫下來,然後把它轉為「學生」的語言。
確認無論是基本問題還是單元問題,他們都不只有一個明顯的「正確」答案。
不要過多擔心你的問題到底是「基本問題」還是「單元問題—你要重點關注它是否需要更高層次的思維技能。
記住:一個好的問題和好的單元的形成是一個反復的過程!
三 java培訓課程有什麼內容具體有哪些模塊框架
有幾大技術框來架如下:
java語言和自資料庫技術(1)開發環境(2)java語言基礎(3)java面向對象(4)JDK核心API(5)資料庫技術(6)JavaSE核心(7)XML(8)JBDC
2.Android各核心技術應用(1)軟體工程基礎(2)OOAD及設計模式(3)HTML/CSS(4)JavaScript核心(5)Android基礎(6)Android核心組件(7)Android資料庫技術(8)Android多媒體技術(9)Android2D/3D技術(10)Android游戲編程。
四 web課程裡面會學習到哪幾種框架呢
這里整理了一份系統全面的web前端學習路線,框架的相關內容在第三階段,希望可以幫到你~
第一階段:專業核心基礎
階段目標:
1. 熟練掌握HTML5、CSS3、Less、Sass、響應書布局、移動端開發。
2. 熟練運用HTML+CSS特性完成頁面布局。
4. 熟練應用CSS3技術,動畫、彈性盒模型設計。
5. 熟練完成移動端頁面的設計。
6. 熟練運用所學知識仿製任意Web網站。
7. 能綜合運用所學知識完成網頁設計實戰。
知識點:
1、Web前端開發環境,HTML常用標簽,表單元素,Table布局,CSS樣式表,DIV+CSS布局。熟練運用HTML和CSS樣式屬性完成頁面的布局和美化,能夠仿製任意網站的前端頁面實現。
2、CSS3選擇器、偽類、過渡、變換、動畫、字體圖標、彈性盒模型、響應式布局、移動端。熟練運用CSS3來開發網頁、熟練開發移動端,整理網頁開發技巧。
3、預編譯css技術:less、sass基礎知識、以及插件的運用、BootStrap源碼分析。能夠熟練使用 less、sass完成項目開發,深入了解BootStrap。
4、使用HTML、CSS、LESS、SASS等技術完成網頁項目實戰。通過項目掌握第一階段、css的內容、完成PC端頁面設計和移動端頁面設計。
第二階段:Web後台技術
階段目標:
1. 了解JavaScript的發展歷史、掌握Node環境搭建及npm使用。
2. 熟練掌握JavaScript的基本數據類型和變數的概念。
3. 熟練掌握JavaScript中的運算符使用。
4. 深入理解分之結構語句和循環語句。
5. 熟練使用數組來完成各種練習。
6.熟悉es6的語法、熟練掌握JavaScript面向對象編程。
7.DOM和BOM實戰練習和H5新特性和協議的學習。
知識點:
1、軟體開發流程、演算法、變數、數據類型、分之語句、循環語句、數組和函數。熟練運用JavaScript的知識完成各種練習。
2、JavaScript面向對象基礎、異常處理機制、常見對象api,js的兼容性、ES6新特性。熟練掌握JavaScript面向對象的開發以及掌握es6中的重要內容。
3、BOM操作和DOM操作。熟練使用BOM的各種對象、熟練操作DOM的對象。
4、h5相關api、canvas、ajax、數據模擬、touch事件、mockjs。熟練使用所學知識來完成網站項目開發。
第三階段:資料庫和框架實戰
階段目標:
1. 綜合運用Web前端技術進行頁面布局與美化。
2. 綜合運用Web前端開發框架進行Web系統開發。
3. 熟練掌握Mysql、Mongodb資料庫的發開。
4. 熟練掌握vue.js、webpack、elementui等前端框技術。
5. 熟練運用Node.js開發後台應用程序。
6. 對Restful,Ajax,JSON,開發過程有深入的理解,掌握git的基本技能。
知識點:
1、資料庫知識,範式,MySQL配置,命令,建庫建表,數據的增刪改查,mongodb資料庫。深入理解資料庫管理系統通用知識及MySQL資料庫的使用與管理,為Node.js後台開發打下堅實基礎。
2、模塊系統,函數,路由,全局對象,文件系統,請求處理,Web模塊,Express框架,MySQL資料庫處理,RestfulAPI,文件上傳等。熟練運用Node.js運行環境和後台開發框架完成Web系統的後台開發。
3、vue的組件、生命周期、路由、組件、前端工程化、webpack、elementui框架。Vue.js框架的基本使用有清晰的理解,能夠運用Vue.js完成基礎前端開發、熟練運用Vue.js框架的高級功能完成Web前端開發和組件開發,對MVVM模式有深刻理解。
4、需求分析,資料庫設計,後台開發,使用vue、node完成pc和移動端整站開發。於Node.js+Vue.js+Webpack+Mysql+Mongodb+Git,實現整站項目完整功能並上線發布。
第四階段:移動端和微信實戰
階段目標:
1.熟練掌握React.js框架,熟練使用React.js完成開發。
2.掌握移動端開發原理,理解原生開發和混合開發。
3.熟練使用react-native和Flutter框架完成移動端開發。
4.掌握微信小程序以及了解支付寶小程序的開發。
5.完成大型電商項目開發。
知識點:
1、React面向組件編程、表單數據、組件通信、監聽、聲明周期、路由、Rex基本概念。練使用react完成項目開發、掌握Rex中的非同步解決方案Saga。
2、react-native、開發工具、視圖與渲染、api操作、Flutter環境搭建、路由、ListView組件、網路請求、打包。練掌握react-native和Flutter框架,並分別使用react-native和Flutter分別能開發移動端項目。
3、微信小程序基本介紹、開發工具、視圖與渲染、api操作、支付寶小程序的入門和api學習。掌握微信小程序開發了解支付寶小程序。
4、大型購物網站實戰,整個項目前後端分離開發;整個項目分為四部分:PC端網頁、移動端APP、小程序、後台管理。團隊協作開發,使用git進行版本控制。目期間可以擴展Three.js 、TypeScript。
五 如何理解課程的基本理念與內容框架
就是課程內容的最基本化,也是大范圍的定向依據,還有相關的意義所在的意思……
六 高中數學課程框架有哪些主要的部分
高中數學課程框架有哪些主要的部分
高中數學課程分必修和選修。必修課程由 5 個模塊組成;選修課程有 4 個系列,其中系列 1、
系列 2 由若干模塊組成,系列 3、系列 4 由若干專題組成;每個模快 2 學分(36 學時),每
個專題 1 學分(18 學時),每 2 個專題可組成 1 個模塊。
一、必修課程
必修課程是每個學生都必須學習的數學內容,包括 5 個模塊。
數學 1: *** ,函數概念與基本初等函數 I(指數函數、對數函數、冪函數)。
數學 2:立體幾何初步,平面解析幾何初步。
數學 3:演算法初步,統計, 概率。
數學 4:基本初等函數 II(三角函數)、平面上的向量,三角恆等變換。
數學 5:解三角形,數列,不等式。
二、選修課程
對於選修課程,學生可以根據自己的興趣和對未來發展的願望進行選擇。選修課程由系列 1,
系列 2,系列 3,系列 4 等組成。
1、系列 1:由 2 個模塊組成。
選修 1-1:常用邏輯用語、圓錐曲線與方程、導數及其初步應用。
選修 1-2:統計案例、推理與證明、數系擴充及復數的引入、框圖。
2、系列 2:由 3 個模塊組成。
選修 2-1:常用邏輯用語、圓錐曲線與方程、空間中的向量與立體幾何。
選修 2-2:導數及其應用、推理與證明、數系的擴充與復數的引入。
選修 2-3:計數原理、統計案例、概率。
3、系列 3:由 6 個專題組成。
選修 3-1:數學史選講;
選修 3-2:信息安全與密碼;
選修 3-3:球面上的幾何;
選修 3-4:對稱與群;
選修 3-5:歐拉公式與閉曲面分類;
選修 3-6:三等分角與數域擴充。
4、系列 4:由 10 個專題組成。
七 Python課程內容都學習什麼啊
這里整理了一份Python全棧開發的學習路線,要學習以下內容:
第一階段:專業核心基礎
階段目標:
1. 熟練掌握Python的開發環境與編程核心知識
2. 熟練運用Python面向對象知識進行程序開發
3. 對Python的核心庫和組件有深入理解
4. 熟練應用SQL語句進行資料庫常用操作
5. 熟練運用Linux操作系統命令及環境配置
6. 熟練使用MySQL,掌握資料庫高級操作
7. 能綜合運用所學知識完成項目
知識點:
Python編程基礎、Python面向對象、Python高級進階、MySQL資料庫、Linux操作系統。
1、Python編程基礎,語法規則,函數與參數,數據類型,模塊與包,文件IO,培養扎實的Python編程基本功,同時對Python核心對象和庫的編程有熟練的運用。
2、Python面向對象,核心對象,異常處理,多線程,網路編程,深入理解面向對象編程,異常處理機制,多線程原理,網路協議知識,並熟練運用於項目中。
3、類的原理,MetaClass,下劃線的特殊方法,遞歸,魔術方法,反射,迭代器,裝飾器,UnitTest,Mock。深入理解面向對象底層原理,掌握Python開發高級進階技術,理解單元測試技術。
4、資料庫知識,範式,MySQL配置,命令,建庫建表,數據的增刪改查,約束,視圖,存儲過程,函數,觸發器,事務,游標,PDBC,深入理解資料庫管理系統通用知識及MySQL資料庫的使用與管理。為Python後台開發打下堅實基礎。
5、Linux安裝配置,文件目錄操作,VI命令,管理,用戶與許可權,環境配置,Docker,Shell編程Linux作為一個主流的伺服器操作系統,是每一個開發工程師必須掌握的重點技術,並且能夠熟練運用。
第二階段:PythonWEB開發
階段目標:
1. 熟練掌握Web前端開發技術,HTML,CSS,JavaScript及前端框架
2. 深入理解Web系統中的前後端交互過程與通信協議
3. 熟練運用Web前端和Django和Flask等主流框架完成Web系統開發
4. 深入理解網路協議,分布式,PDBC,AJAX,JSON等知識
5. 能夠運用所學知識開發一個MiniWeb框架,掌握框架實現原理
6. 使用Web開發框架實現貫穿項目
知識點:
Web前端編程、Web前端高級、Django開發框架、Flask開發框架、Web開發項目實戰。
1、Web頁面元素,布局,CSS樣式,盒模型,JavaScript,JQuery與Bootstrap掌握前端開發技術,掌握JQuery與BootStrap前端開發框架,完成頁面布局與美化。
2、前端開發框架Vue,JSON數據,網路通信協議,Web伺服器與前端交互熟練使用Vue框架,深入理解HTTP網路協議,熟練使用Swagger,AJAX技術實現前後端交互。
3、自定義Web開發框架,Django框架的基本使用,Model屬性及後端配置,Cookie與Session,模板Templates,ORM數據模型,Redis二級緩存,RESTful,MVC模型掌握Django框架常用API,整合前端技術,開發完整的WEB系統和框架。
4、Flask安裝配置,App對象的初始化和配置,視圖函數的路由,Request對象,Abort函數,自定義錯誤,視圖函數的返回值,Flask上下文和請求鉤子,模板,資料庫擴展包Flask-Sqlalchemy,資料庫遷移擴展包Flask-Migrate,郵件擴展包Flask-Mail。掌握Flask框架的常用API,與Django框架的異同,並能獨立開發完整的WEB系統開發。
第三階段:爬蟲與數據分析
階段目標:
1. 熟練掌握爬蟲運行原理及常見網路抓包工具使用,能夠對HTTP及HTTPS協議進行抓包分析
2. 熟練掌握各種常見的網頁結構解析庫對抓取結果進行解析和提取
3. 熟練掌握各種常見反爬機制及應對策略,能夠針對常見的反爬措施進行處理
4. 熟練使用商業爬蟲框架Scrapy編寫大型網路爬蟲進行分布式內容爬取
5. 熟練掌握數據分析相關概念及工作流程
6. 熟練掌握主流數據分析工具Numpy、Pandas和Matplotlib的使用
7. 熟練掌握數據清洗、整理、格式轉換、數據分析報告編寫
8. 能夠綜合利用爬蟲爬取豆瓣網電影評論數據並完成數據分析全流程項目實戰
知識點:
網路爬蟲開發、數據分析之Numpy、數據分析之Pandas。
1、爬蟲頁面爬取原理、爬取流程、頁面解析工具LXML,Beautifulfoup,正則表達式,代理池編寫和架構、常見反爬措施及解決方案、爬蟲框架結構、商業爬蟲框架Scrapy,基於對爬蟲爬取原理、網站數據爬取流程及網路協議的分析和了解,掌握網頁解析工具的使用,能夠靈活應對大部分網站的反爬策略,具備獨立完成爬蟲框架的編寫能力和熟練應用大型商業爬蟲框架編寫分布式爬蟲的能力。
2、Numpy中的ndarray數據結構特點、numpy所支持的數據類型、自帶的數組創建方法、算術運算符、矩陣積、自增和自減、通用函數和聚合函數、切片索引、ndarray的向量化和廣播機制,熟悉數據分析三大利器之一Numpy的常見使用,熟悉ndarray數據結構的特點和常見操作,掌握針對不同維度的ndarray數組的分片、索引、矩陣運算等操作。
3、Pandas裡面的三大數據結構,包括Dataframe、Series和Index對象的基本概念和使用,索引對象的更換及刪除索引、算術和數據對齊方法,數據清洗和數據規整、結構轉換,熟悉數據分析三大利器之一Pandas的常見使用,熟悉Pandas中三大數據對象的使用方法,能夠使用Pandas完成數據分析中最重要的數據清洗、格式轉換和數據規整工作、Pandas對文件的讀取和操作方法。
4、matplotlib三層結構體系、各種常見圖表類型折線圖、柱狀圖、堆積柱狀圖、餅圖的繪制、圖例、文本、標線的添加、可視化文件的保存,熟悉數據分析三大利器之一Matplotlib的常見使用,熟悉Matplotlib的三層結構,能夠熟練使用Matplotlib繪制各種常見的數據分析圖表。能夠綜合利用課程中所講的各種數據分析和可視化工具完成股票市場數據分析和預測、共享單車用戶群里數據分析、全球幸福指數數據分析等項目的全程實戰。
第四階段:機器學習與人工智慧
階段目標:
1. 理解機器學習相關的基本概念及系統處理流程
2. 能夠熟練應用各種常見的機器學習模型解決監督學習和非監督學習訓練和測試問題,解決回歸、分類問題
3. 熟練掌握常見的分類演算法和回歸演算法模型,如KNN、決策樹、隨機森林、K-Means等
4. 掌握卷積神經網路對圖像識別、自然語言識別問題的處理方式,熟悉深度學習框架TF裡面的張量、會話、梯度優化模型等
5. 掌握深度學習卷積神經網路運行機制,能夠自定義卷積層、池化層、FC層完成圖像識別、手寫字體識別、驗證碼識別等常規深度學習實戰項目
知識點:
1、機器學習常見演算法、sklearn數據集的使用、字典特徵抽取、文本特徵抽取、歸一化、標准化、數據主成分分析PCA、KNN演算法、決策樹模型、隨機森林、線性回歸及邏輯回歸模型和演算法。熟悉機器學習相關基礎概念,熟練掌握機器學習基本工作流程,熟悉特徵工程、能夠使用各種常見機器學習演算法模型解決分類、回歸、聚類等問題。
2、Tensorflow相關的基本概念,TF數據流圖、會話、張量、tensorboard可視化、張量修改、TF文件讀取、tensorflow playround使用、神經網路結構、卷積計算、激活函數計算、池化層設計,掌握機器學習和深度學習之前的區別和練習,熟練掌握深度學習基本工作流程,熟練掌握神經網路的結構層次及特點,掌握張量、圖結構、OP對象等的使用,熟悉輸入層、卷積層、池化層和全連接層的設計,完成驗證碼識別、圖像識別、手寫輸入識別等常見深度學習項目全程實戰。
八 什麼是課程框架問題
資料卡片(願與各位同學共享): 課程框架問題包括基本問題,單元問題和內容問題。單元問題: 反映了基本的概念, 指向規律的核心;在內容範疇提出了重要的問題沒有單一的,明顯「正確」的答案。 基本問題: 能夠激發學生的興趣,內容問題,直接支持內容和學習目標,有特定的「正確」的答案 「在問題的解決,概念的理解和批評反思中,技術的應用是非常有效的。」 「利用技術,學生可花更多時間創新策略去解決復雜的問題和增強更高的理解能力。」 在一個持續一年的社會科學研究中,若研究的范圍包括了諸如世界探險、工業革命、第二次世界大戰等,它會是一個基本問題。 在交叉學科的研究中如語言藝術/社會科學研究,我們探討問題的不同側面,它也可以成為一個基本問題。 在研究一個特定的項目如「進化」時,它也可以成為一個單元問題 內容問題不同於單元問題和基本問題,大多涉及的是事實而不是該事實的闡釋,都有明確的答案。 建構課程框架問題的提示: 開始去做…不要擔心它的技巧和語言,重點是頭腦風暴. 你先以陳述的方式把問題寫下來,然後把它修改為疑問句。 如果需要的話,用成人的語言把基本意思寫下來,然後把它轉為「學生」的語言。 確認無論是基本問題還是單元問題,他們都不只有一個明顯的「正確」答案。 不要過多擔心你的問題到底是「基本問題」還是「單元問題—你要重點關注它是否需要更高層次的思維技能。 記住:一個好的問題和好的單元的形成是一個反復的過程!
㈡ 如何系統地學習Shell編程
步驟/方法
資料庫管理系統(DBMSes)
諸如PostgreSQL、 Oracle、Microsoft SQL Server,以及Informix這種專業、耐用的資料庫管理系統通過存儲過程或存儲函數提供了腳本功能。最受廣泛認可的語言選項也許是Microsoft SQL Server和Sybase所使用的TransactSQL,以及Oracle所使用的PL/SQL。 PostgreSQL提供了一個名為PL/pgSQL的類PL/SQL的程序擴展到SQL里,但它也提供了包括PL/Perl、PL/Python、PL/Ruby和 PL/Tcl在內的其他語言的選擇范圍。
這種編程機會雖然限定於一組特定的問題領域,但如果你是一名DBA(資料庫管理員)或你的工作涉及資料庫開發報告,將會親身體驗到這是非常有用的。
插件
許多新的電腦游戲提供了編寫和載入插件的功能。例如,「魔獸世界(World of Warcraft)」提供了一個使用Lua腳本語言的插件系統。隨著Firefox聲名鵲起和廣泛使用,現代網頁瀏覽器往往也提供靈活的插件系統;在最簡單的情況下,Firefox的插件都是用JavaScript編寫的。開放源碼的瀏覽器在插件開發方面往往比封閉源代碼的瀏覽器更具吸引力,並且Chromium瀏覽器的插件系統,很可能成為插件開發者們的第二大目標,這是因為谷歌Chrome瀏覽器高調的營銷策略以及不設限的許可證(permissive licensing)政策。
其他許多應用程序具有插件和擴展系統,可以提供充分的機會來培養這些迅速發展的編碼技能,甚至包括一些終端模擬器(terminal emulators)和基於控制台的文本編輯器,如Vim。(透露一點好消息:我貢獻了一點代碼到urlpicker項目。)
實踐問題
您可以嘗試解決代碼任務中的通用清單所提供的問題,代碼任務是特別為了給程序員提供實習機會而專業設計的。歐拉(Project Euler)是一個比較流行的、不論編程語言的項目,包括「一系列具有挑戰性的數學/計算機編程問題」。歐拉項目收集了上百個問題,這些問題一般從易到難,足以讓你忙碌很長一段時間。
其他例子包括RubyQuiz,它多年來一直在ruby-talk的郵件列表中廣受歡迎。另外還有CodeKata,它是Dave Thomas的一個規模較小、壽命較短的項目。Dave Thomas是《The Pragmatic Programmer(程序員修煉之道)》一書的合著者之一。
這些選項不適合用作自我激勵型探索性學習的任務,因為它們會讓人撓破頭皮,但如果發現其中的樂趣,它們可以和其它方法一樣用於編程實踐教育。
智能手機(Smartphones)
應用程序開發行業中最大的新熱潮是智能手機的應用程序。這種裝置通常需要開發人員使用一種可將裝置的功能發揮到極至的特定語言作為應用平台,至少要以官方認可的方式進行。
智能手機開發體系的一個新興產業正在崛起,即允許開發人員用非智能手機平台原生的其它語言編寫自己的代碼,然後轉化為原生語言的應用程序。 因為不需要學習任何特定的智能手機平台的官方應用程序開發語言,Web應用程序也沾了光,成為智能手機應用程序開發的一種方法。選擇語言甚於平台的另一個方案是使用像諾基亞的N900這樣的設備,它運行Debian發行的Linux系統,可以運行的軟體范圍很寬——包括很多不是為智能手機設計的軟體。
側重於多種方法開發智能手機應用程序的書籍和在線教程紛紛出現,特別是Android和iPhone的設備。一些第三方框架將可以從HTML + JavaScript 到 Ruby 或 Python編寫的代碼「編譯」為多種平台的「本地」應用程序,有時不僅包括智能電話平台,而且包括桌面系統。對這種情況也許最令人興奮的是,這些框架和相關的IDE不傾向於試圖解決所有的編程問題,這與同樣出色的編程方式的主要框架,如Visual Studio和.NET框架有所不同。這使得人們有可能通過縮小選項至一個易於管理的問題領域來顯著地簡化開發過程。其結果是軟體開發風格令初學者感到非常易於接受。
不足之處是,在學習如何編程時,你可能很難每天都編寫新的智能手機應用程序。但是,如果您的智能手機的操作系統是類Unix系統(如N900的),同樣的小工具開發項目在工作站和伺服器中都非常有用。
電子表格
如果使用了附帶強大宏系統的電子表格程序,你將擁有一個快速的方法來閱讀其他人(或物)代碼,並編寫自己的代碼。首先,將你執行次數多、通常需要採取數個繁瑣步驟的任務記錄成一個宏。接下來,打開宏的源代碼,閱讀並進行編輯,使之更適合於一般用途。這是一個非常有限的方法,不會帶來多大的長進,但可能會幫助你上路,自然地喜歡上簡單的腳本代碼。
使用此類腳本的最常見的電子表格程序可能是微軟Excel。Excel所使用的VBA是一種貧乏的語言,但是如果你在日常工作中大量使用Excel,這可能是無論如何你都該掌握的一種技能。OpenOffice.org使用了類似的宏系統,使用方法大致相同,LibreOffice也像微軟Office一樣,提供了學習代碼的機會。
在任何情況下,編寫程序的門坎都比編寫簡單的命令行shell腳本代碼稍高,因為菜單選項和按鈕需要點擊才能啟用。入門的成本類似於用市場上的一種主要IDE開始一個新項目,但是一個大幅縮水的「項目」。這會是一個不錯的主意,可以確保這不僅僅是在日常開發環境中編寫腳本的機會,甚至是加以利用就會很有幫助的。
Unix
如果你定期使用一些類UNIX系統,在尋找鍛煉初期編程技能的方式時就具有巨大的優勢。UNIX在簡單腳本自動化方面提供了比任何其他家庭通用操作系統的更多的使用機會,這要感謝平台上管理腳本的極大靈活性。在最不復雜的情況下,一個管理腳本可能只不過是將一系列shell命令保存到一個文件中。在此基礎上,可以利用簡單的循環和條件結構、輸入輸出處理、文件讀寫、計劃任務來進行擴展。
通過編寫簡單shell腳本爽過一把後,花一段時間來學習如何用Perl、Python和Ruby編寫管理腳本對任何一個Unix系統管理員都是值得的。在Unix環境使用這些語言的關鍵技能包括通過UNIX管道和重定向訪問文本流,處理命令行選項,讀寫文件,使用正則表達式搜索和操作文本。管理員也想知道編程的公共基礎知識,比如處理輸出,循環(或在某些情況下遞歸),以明確界定的標准為基礎,通過使用條件判斷結構編程來作出決策。
編寫Unix命令行工具是一塊沃土,有許多機會將腳本語言的巨大能力用於編程。由於管理腳本開發的靈活性和簡約性要求,編寫工具的范圍可以從一些有用工具的最簡例子到強大的伺服器進程,甚至大規模並行任務自動化,負載平衡,啟發式過濾,和一些其他有趣的問題解決作業,這些問題激起了世界上最好的程序員的興趣。
雖然幾乎所有通用操作系統都具有一些使用管理腳本的能力,其中相當一部分用途比較窄,另一些操作系統則比較均衡。Unix在管理腳本的適用條件方面高人一等,因為諸如主要Linux發行版和BSD Unix系統等Unix類系統共享相同的基本運行環境設計,他們都可以從管理腳本和腳本平台之間的可移植性中受益 - 只要你按可移植性要求來寫這些腳本(如通過使用sh或Perl而不是bash,選擇系統標准sysctl值而不是數據源的proc文件系統)。
這些工作也適用於除開非常高級,動態,解釋型語言之外的其它語言。C,C++,Haskell,Objective-C,Objective Caml,以及大量其他選項正好合適各類簡單Unix工具的編寫任務。對於其中的許多語言,即使要完成像小型管理工具的這樣簡單的工程項目,也必須學會更廣泛的技能,這一要求比Perl,Ruby和Bourne shell的這樣的語言高。但這些任務與GUI應用程序開發、系統編程、其它經常使用(特別是在其他平台上的)的任務比起來,其艱巨性對編程初學者來說要小得多。
實際上,鑒於Unix哲學多年來提供了大量常用工具,這些工具嚴格分工(大部分),並工作良好,類UNIX環境對編程新手的價值中有一部分是充分利用Unix命令行環境力量,鼓勵用戶像程序員那樣去思考,而非觀眾。
Web網頁
這是一個危險的建議,通過玩JavaScript來學習編程。這不是因為JavaScript是一種不好的語言,而是因為追求動態用戶體驗的緣故,網頁已經被不加限制地濫用JavaSciprt弄得亂七八糟,因而在網頁上放縱程序員新手可能會被認為是不負責任的。在網頁中JavaScript也有一些積極用法,而且可以讓新手們對編寫在瀏覽器中運行的桌面應用程序的想法愈來愈感興趣,這給了我們在程序員職業生涯中盡早開始學習JavaScript的很多理由。
事實上,JavaScript是一種最常見的、單獨的客戶端網頁腳本,這也意味著JavaScript可能是最簡單的語言,通過閱讀別人的代碼就能學習。找到具有客戶端動態元素的任何網頁,然後右鍵單擊並選擇查看頁面源代碼的選項,你就會發現它布滿了JavaScript的散落片段。對於更復雜的動態頁面,(X)HTML的網頁甚至可能引用一個純代碼的單獨.js文件。
在把代碼上傳到公共訪問的Web伺服器前要細心檢查;確保它是好的。如果你想讓更多的有用腳本以本地方式來啟動,瀏覽器擴展性可以讓你將任意腳本應用到你查看的網頁上——而且只適用於你個人的瀏覽體驗。Firefox的Greasemonkey是一個例子。