1. 如何成為一名程序員
成為程序員的具體步驟:第一步:掌握一種編程語言。學習任意一種主流的編程語言,例如C++語言。熟練掌握一種語言的語法和基本的編程技巧。學習時間:3個月左右注意事項:編程語言和編程工具是兩回事情,編程語言是指C++、Basic、Object Pascal等。程序設計語言,它們是像漢語、英語一樣的抽象的語法規則,編程工具是指Visual C++ 6.0、Visual Basic 6.0、Delphi 7.0等包括了源代碼編輯器、程序編譯器 在內的集成化、可視化的軟體開發工具。C++源程序可以在Visual C++ 6.0里編寫,也可以在記事本里編寫,而同一個C++源程序可以用Visual C++ 6.0編譯、執行,也可以用C++ Builder 5.0編譯、執行,所以: C++ 不等於 Visual C++ 6.0。第二步:掌握一種編程工具,學習任意一種主流的編程工具。注意編程工具要和第一階段學習的編程語言一致,例如你學習的編程語言是C++,那麼編程工具要選Visual C++ 6.0或者C++ Builder 5.0。熟練掌握這種編程工具基本用法,例如:菜單、組件、程序跟蹤調試、編寫Windows程序等。學習時間:3個月左右注意事項:這個階段側重編程工具的使用,同時進一步熟習編程語言,最後達到能熟練編寫各種基本的Windows程序。第三步:掌握「演算法與數據結構」這門課程,推薦許卓群的《數據結構》,熟練掌握各種常用的演算法與數據結構。學習時間:4個月左右注意事項:這是一門不可或缺的軟體開發課程,曾經有一本經典計算機專業書籍叫做《數據結構+演算法=程序》,這說明了數據結構和演算法的重要性。它能幫我們建立良好的程序分析與設計能力。第四步:實現一個模擬的小型軟體項目,掌握軟體項目的基本開發過程和方法。學習時間:4個月左右注意事項:自己完成一個模擬的小型軟體項目,強烈推薦做一個MIS(管理信息系統)軟體,參考用書推「中小型信息管理系統開發實例系列叢書」,人民郵電出版社,它的例子詳實有效, 以它為基礎再加以擴展,就可以做出實用的MIS軟體來。如何成為一名程序員?
2. 程序員編程開的黑色的窗口怎麼出來的
這個黑色的窗口是叫做DOC窗口。進入DOC窗口後可以進行編程,有下面幾種辦法可以進入。
1:開始開始菜單-->選擇運行-->然後輸入cmd指令。
2:按下鍵盤上的「win」圖標按鈕+"R"鍵,輸入"cmd"。
3:在開始菜單直接輸入cmd,然後回車。
我只有在最初兩年試過黑色背景的編程界面,後來全都換成IDE/Editor默認的白色背景了。白色背景的編輯環境下語法高亮有更多選擇,不會導致tooltip等浮動小窗口文字看不清楚(debug時很重要),和IDE/Editor的其他窗口、控制項色調不沖突。而且標准配色由於本身很常見/平淡因此不會干擾思路。
3. 菜單中命令後面的括弧和括弧里的字母、數字怎麼用
1、首先滑鼠左鍵點擊「開始」按鈕,在打開的開始菜單中,沒有找到運行命令。
4. 微信訂閱號的自定義菜單開發要專門的程序員才能搞定么
完成認證自動就有了
5. 為什麼說poker 2是程序員專用鍵盤
這時cpas鍵就變成了強大的的pn鍵
win鍵還是win鍵
alt l還是alt l
alt r 變成了 fn,事實上fn 在這個位置用起來更舒服
原來的fn鍵變成了win鍵,
原來的pn鍵變成了菜單鍵,
cpas鍵用到的幾率並不大,但是卻佔用了一個黃金位置
所以把功能強大的pn鍵設置在這里,就能很好的利用這個位置
輕松完爆HHKB
接著我們可以給一下按鍵編程,比如把4編為fn+4 -編為fn+- 等等需要fn操作的鍵都編一下
接著就可以使用caps鍵,也就是pn鍵結合這些鍵來操作,簡直是酸爽
比如方向鍵,還可以把jklh編為vim模式
6. windows 程序設計 系統菜單什麼意思
一、事件驅動的程序設計
1\傳統的MS-DOS程序主要採用順序的、關聯的、過程驅動的程序設計方法。一個程序是一系列預先定義好的操作序列的組合,它具有一定的開頭、中間過程和結束。程序直接控製程序事件和過程的順序。這樣的程序設計方法是面向程序而不是面向用戶的,交互性差,用戶界面不夠友好,因為它強迫用戶按照某種不可更改的模式進行工作。
2\事件驅動程序設計是一種全新的程序設計方法,它不是由事件的順序來控制,而是由事件的發生來控制,而這種事件的發生是隨機的、不確定的,並沒有預定的順序,這樣就允許程序的的用戶用各種合理的順序來安排程序的流程。
對於需要用戶交互的應用程序來說,事件驅動的程序設計有著過程驅動方法無法替代的優點。
它是一種面向用戶的程序設計方法,它在程序設計過程中除了完成所需功能之外,更多的考慮了用戶可能的各種輸入,並針對性的設計相應的處理程序。
它是一種「被動」式程序設計方法,程序開始運行時,處於等待用戶輸入事件狀態,然後取得事件並作出相應反應,處理完畢又返回並處於等待事件狀態。
二、 消息循環與輸入
事件驅動圍繞著消息的產生與處理展開,一條消息是關於發生的事件的消息。
事件驅動是靠消息循環機制來實現的。
消息是一種報告有關事件發生的通知。
消息類似於DOS下的用戶輸入,但比DOS的輸入來源要廣,Windows應用程序的消息來源有以下四種:
(1)輸入消息:包括鍵盤和滑鼠的輸入。----------這一類消息首先放在系統消息隊列中,然後由Windows將它們送入應用程序消息隊列中,由應用程序來處理消息。
(2)控制消息:用來與Windows的控制對象,如列表框、按鈕、檢查框等進行雙向通信。當用戶在列表框中改動當前選擇或改變了檢查框的狀態時發出此類消息。這類消息一般不經過應用程序消息隊列,而是直接發送到控制對象上去。
(3)系統消息:對程序化的事件或系統時鍾中斷作出反應。一些系統消息,象DDE消息(動態數據交換消息)要通過Windows的系統消息隊列,而有的則不通過系統消息隊列而直接送入應用程序的消息隊列,如創建窗口消息。
(4)用戶消息:這是程序員自己定義並在應用程序中主動發出的,一般由應用程序的某一部分內部處理。
Windows操作系統包括三個內核基本元件:GDI, KERNEL ,USER。
其中GDI(圖形設備介面)負責在屏幕上繪制像素、列印硬拷貝輸出,繪制用戶界麵包括窗口、菜單、對話框等。
系統內核KERNEL支持與操作系統密切相關的功能:如進程載入,文本切換、文件I/O,以及內存管理、線程管理等。
USER為所有的用戶界面對象提供支持,它用於接收和管理所有輸入消息、系統消息並把它們發給相應的窗口的消息隊列。消息隊列是一個系統定義的內存塊,用於臨時存儲消息;或是把消息直接發給窗口過程。每個窗口維護自己的消息隊列,並從中取出消息,利用窗口函數進行處理。
三、圖形輸出
Windows程序不僅在輸入上與DOS程序不同,而且在程序輸出上也與DOS有著很大不同,主要表現為:
1.DOS程序獨占整個顯示屏幕,其他程序在後台等待。
2.Windows程序的所有輸出都是圖形。
3.Windows下的輸出是設備無關的。-------Windows下的應用程序使用圖形設備介面(GDI)來進行圖形輸出。GDI屏蔽了不同設備的差異,提供了設備無關的圖形輸出能力,Windows應用程序只要發出設備無關的GDI請求(如調用Rectangle畫一個矩形),由GDI去完成實際的圖形輸出操作。對於一台具有列印矩形功能的PostScript列印機來說,GDI可能只需要將矩形數據傳給驅動程序就可以了,然後由驅動程序產生PostScript命令繪制出相應的矩形;而對於一台沒有矩形輸出功能的點陣列印機來說,GDI可能需要將矩形轉化為四條線,然後向驅動程序發出畫線的指令,在列印機上輸出矩形。
四、GDI(圖形設備介面)介紹:
GDI提供兩種基本服務:創建圖形輸出和存儲圖象。
GDI提供了大量用於圖形輸出的函數,這些函數接收應用程序發出來的繪圖請求、處理繪圖數據並根據當前使用設備調用相應的設備驅動程序產生繪圖輸出。這些繪圖函數分為三類:一是文字輸出,二是矢量圖形函數,用於畫線、圓等幾何圖形,三是光柵(點陣圖)圖形函數,用於繪制點陣圖。
GDI識別四種類型的設備:顯示屏幕、硬拷貝設備(列印機、繪圖機)、點陣圖和圖元文件。
前兩者是物理設備,後兩者是偽設備。
一個偽設備提供了一種在RAM里或磁碟里存儲圖象的方法。
點陣圖存放的是圖形的點位信息,佔用較多的內存,但速度很快;圖元文件保存的是GDI函數的調用和調用參數,佔用內存較少,但依賴於GDI,因此不可能用某個設備來創建圖元文件,而且速度比點陣圖要慢。
GDI的圖形輸出是面向窗口的,面向窗口包含兩層含義:
(1)每個窗口作為一個獨立的繪圖介面來處理,有它自己的繪圖坐標。當程序在一個窗口中繪圖時,首先建立預設的繪圖坐標,原點(0,0)位於窗口用戶區的左上角。每個窗口必須獨立的維護自己的輸出。
(2)繪圖僅對於本窗口有效,圖形在窗口邊界會被自動裁剪,也就是說窗口中的每一個圖形都不會越出邊界。即使想越出邊界,也是不可能的,窗口會自動的防止其他窗口傳過來的任何像素。這樣,你在窗口內繪圖時,就不必擔心會偶然覆蓋其他程序的窗口,從而保證了Windows下同時運行多個任務時各個窗口的獨立性。
五、資源共享
對於DOS程序來說,它運行時獨占系統的全部資源,包括顯示器、內存等,在程序結束時才釋放資源。而Windows是一個多任務的操作系統,各個應用程序共享系統提供的資源,常見的資源包括:設備上下文,畫刷,畫筆,字體,對話框控制,對話框,圖標,定時器,插入符號,通信埠,電話線等。
Windows要求應用程序必須以一種能允許它共享Windows資源的方式進行設計,它的基本模式是這樣的:
1.向Windows系統請求資源;
2.使用該資源;
3.釋放該資源給Windows以供別的程序使用。
即使最有經驗的Windows程序員也常常會忽略第三步。如果忽略了這一步,輕則當時不出錯,但過一會兒出現程序運行出現異常情況,或干擾別的程序正常運行;重則立即死機,比如設備上下文沒有釋放時。
在Windows應用程序設計中,CPU也是一種非常重要的資源,因此應用程序應當避免長時間的佔用CPU資源(如一個特別長的循環);如果確實需要這樣做,也應當採取一些措施,以讓程序能夠響應用戶的輸入。主存也是一個共享資源,要防止同時運行的多個應用程序因協調不好而耗盡內存資源。
應用程序一般不要直接訪問內存或其他硬體設備,如鍵盤、滑鼠、計數器、屏幕或串口、並口等。Windows系統要求絕對控制這些資源,以保證向所有的應用程序提供公平的不中斷的運行。如果確實要訪問串並口,應當使用通過Windows提供的函數來安全的訪問。
六、Windows程序的組成
編寫一個典型的Windows應用程序,一般需要:
1.C,CPP源程序文件:源程序文件包含了應用程序的數據、類、功能邏輯模塊(包括事件處理、用戶界面對象初始化以及一些輔助常式)的定義。
2.H,HPP頭文件:頭文件包含了CPP、C源文件中所有數據、模塊、類的聲明。當一個CPP、C源文件要調用另一個CPP、C中所定義的模塊功能時,需要包含那個CPP、C文件對應的頭文件。
3.資源文件:包含了應用程序所使用的全部資源定義,通常以.RC為後綴名。這里的資源是應用程序所能夠使用的一類預定義工具中的一個對象,包括:字元串資源、加速鍵表、對話框、菜單、點陣圖、游標、工具條、圖標、版本信息和用戶自定義資源等。
在DOS程序設計過程中,所有的界面設計工作都在源程序中完成。而在Windows程序設計過程中,象菜單、對話框、點陣圖等可視的對象被單獨分離出來加以定義,並存放在資源源文件中,然後由資源編譯程序編譯為應用程序所能使用的對象的映象。資源編譯使應用程序可以讀取對象的二進制映象和具體數據結構,這樣可以減輕為創建復雜對象所需要得程序設計工作。
程序員在資源文件中定義應用程序所需使用的資源,資源編譯程序編譯這些資源並將它們存儲於應用程序的可執行文件或動態連接庫中。
七、程序中引用資源的好處:
1.降低內存需求:當應用程序運行時,資源並不隨應用程序一起裝入內存,而是在應用程序實際用到這些資源時才裝入內存。在資源裝入內存時,它們擁有自己的數據段,而不駐留於應用程序數據段中;當內存緊張時,可以廢棄這些資源,使其佔用的內存空間供他用,而當應用程序用到這些資源時才自動裝入,這種方式降低了應用程序的內存需求,使一次可運行更多的程序,這也是Windows內存管理的優點之一。
2.便於統一管理和重復利用:將點陣圖、圖標、字元串等按資源文件方式組織便於統一管理和重用。比如,將所有的錯誤信息放到資源文件里,利用一個函數就可以負責錯誤提示輸出,非常方便。如果在應用程序中要多次用到一個代表公司的徽標點陣圖,就可以將它存放在資源文件中,每次用到時再從資源文件中裝入。這種方式比將點陣圖放在一個外部文件更加簡單有效。
3.應用程序與界面有一定的獨立性,有利於軟體的國際化:由於資源文件獨立於應用程序設計,使得在修改資源文件時(如調整對話框大小、對話框控制位置),可以不修改源程序,從而簡化了用戶界面的設計。另外,目前所提供的資源設計工具一般都是採用「所見即所得」方式,這樣就可以更加直觀、可視的設計應用程序界面。由於資源文件的獨立性,軟體國際化工作也非常容易。比如,現在開發了一個英文版的應用程序,要想把它漢化,只需要修改資源文件,將其中的對話框、菜單、字元串資源等漢化即可,而無需直接修改源程序。
但是,應用程序資源只是定義了資源的外觀和組織,而不是其功能特性。例如,編輯一個對話框資源,可以改變對話框的安排和外觀,但是卻沒有也不可能改變應用程序響應對話框控制的方式。外觀的改變可以通過編輯資源來實現,而功能的改變卻只能通過改變應用程序的源代碼,然後重新編譯來實現。
C、CPP編譯器將C源程序編譯成目標程序,然後使用連接程序將所有的目標程序(包括各種庫)連接在一起,生成可執行程序。在製作Windows應用程序時,編譯器還要為引出函數生成正確的入口和出口代碼。
連接程序生成的可執行文件還不能在Windows環境下運行,必須使用資源編譯器對其進行處理。資源編譯器對可執行文件的處理是這樣的:如果該程序有資源描述文件,它就把已編譯為二進制數據的資源加入到可執行文件中;否則,僅對該可執行文件進行相容性標識。應用程序必需經過資源編譯器處理才可以在Windows環境下運行。
八、結構化程序設計和面向對象的程序設計
面向對象技術是目前流行的系統設計開發技術,它包括面向對象分析和面向對象程序設計。面向對象程序設計技術的提出,主要是為了解決傳統程序設計方法——結構化程序設計所不能解決的代碼重用問題。
結構化程序設計從系統的功能入手,按照工程的標准和嚴格的規范將系統分解為若干功能模塊,系統是"實現模塊功能的函數和過程"的集合。由於用戶的需求和軟、硬體技術的不斷發展變化,按照功能劃分設計的系統模塊必然是易變的和不穩定的。這樣開發出來的模塊可重用性不高。
面向對象程序設計從所處理的數據入手,以數據為中心而不是以服務(功能)為中心來描述系統。它把編程問題視為一個數據集合,數據相對於功能而言,具有更強的穩定性。
面向對象程序設計同結構化程序設計相比最大的區別就在於:前者首先關心的是所要處理的數據,而後者首先關心的是功能。
面向對象程序設計是一種圍繞真實世界的概念來組織模型的程序設計方法,它採用對象來描述問題空間的實體。一般的認為,對象是包含現實世界物體特徵的抽象實體,它反映了系統為之保存信息和(或)與它交互的能力。它是一些屬性及服務的一個封裝體,在程序設計領域,可以用「對象=數據+作用於這些數據上的操作」這一公式來表達。
"類"是具有相同操作功能和相同的數據格式(屬性)的對象的集合。
類可以看作抽象數據類型的具體實現。
數據類型是指數據的集合和作用於其上的操作的集合,而抽象數據類型不關心操作實現的細節。
從外部看,類型的行為可以用新定義的操作加以規定。
類為對象集合的抽象,它規定了這些對象的公共屬性和方法;對象為類的一個實例。蘋果是一個類,而放在桌上的那個蘋果則是一個對象。
對象和類的關系相當於一般的程序設計語言中變數和變數類型的關系。
消息是向某"對象"請求服務的一種表達方式。對象內有方法和數據,外部的用戶或對象對該對象提出的服務請求,可以稱為向該對象發送消息。
"合作"是指兩個對象之間共同承擔責任和分工。
在Windows中,程序的基本單位不是過程和函數,而是窗口。一個窗口是一組數據的集合和處理這些數據的方法和窗口函數。從面向對象的角度來看,窗口本身就是一個對象。Windows程序的執行過程本身就是窗口和其他對象的創建、處理和消亡過程。Windows中的消息的發送可以理解為一個窗口對象向別的窗口對象請求對象的服務過程。因此,用面向對象方法來進行Windows程序的設計與開發是極其方便的和自然的。
7. 求程序猿幫忙 一定要是C++哦 設計一個菜單程序,選擇數字鍵1生成10個[10,100]隨機整
#include <iostream>
#include <ctime>
using namespace std;
void createArr(int x[],int n){
int i,j,k,t;
//生成數組
for(i=0; i<n; i++)
x[i]=rand()%91+10;
//排序
for(i=0; i<n-1; i++){
k=i;
for(j=i+1; j<n; j++)
if(x[j]<x[k]) k=j;
t=x[i]; x[i]=x[k]; x[k]=t;
}
//輸出數組
for(i=0; i<n; i++){
cout <<x[i] <<" ";
if((i+1)%5==0)
cout <<endl;
}
}
int find(int x[],int n, int key){
int l=0,r=n-1,m;
m=(l+r)/2;
while(l<=r && x[m]!=key){
if(key<x[m])
r=m-1;
else
l=m+1;
m=(l+r)/2;
}
if(l>r) m=-1;
return m;
}
void main(){
srand(time(0));
int a[10],i;
int menu_id=0;
while(1){
cout<<"\n===== 功能菜單 =====\n";
cout<<" 1. 生成數組並排序輸出 \n";
cout<<" 2. 查找指定元素 \n";
cout<<" 3. 退出 \n";
cout<<"請選擇功能號(1-3):";
cin>>menu_id;
switch(menu_id){
case 1:
createArr(a,10);
break;
case 2:
{
int key,r;
cout <<"\n輸入要查找的數:";
cin >>key;
r=find(a,10,key);
if(r==-1)
cout <<"你要查找的數不存在。\n";
else
cout <<"你要查找的數是a[" <<r <<"]\n";
break;
}
case 3:
return;
}
}
}
8. 求一個跨框架(frame)的下拉菜單,我是菜鳥級別的程序員,需要有具體例子! 高手們, 先謝謝了!!
要用什麼腳步來實現?跨什麼框架?要說清楚,要不不好回答。回答的也不一定是你需要的
9. 中文Visual Basic 6.0 的菜單欄主要包括什麼
Visual Basic(VB)是一種由微軟公司開發的包含協助開發環境的事件驅動編程語言。從任何標准來說,VB都是世界上使用人數最多的語言——不僅是盛贊VB的開發者還是抱怨VB的開發者的數量。它源自於BASIC編程語言。VB擁有圖形用戶界面(GUI)和快速應用程序開發(RAD)系統,可以輕易的使用DAO、RDO、ADO連接資料庫,或者輕松的創建ActiveX控制項。程序員可以輕松的使用VB提供的組件快速建立一個應用程序。術語在討論Visual Basic時,經常可以聽到以下這些術語,因此對這些術語的基本理解十分有幫助。
控制項
簡單的說,控制項就是構成或者說建造Visual Basic應用程序的圖形化工具,包括窗體、按鈕、復選框、列表框、數據控制項、表格控制項和圖片控制項等等...。
事件
由用戶或操作系統引發的動作。事件的示例有擊鍵、單擊滑鼠(Click)、雙擊滑鼠(DblClick)、一段時間的限制,或從埠接收數據。
方法
嵌入在對象定義中的程序代碼,它定義對象怎樣處理信息並響應某事件。例如,資料庫對象有打開紀錄集並從一個記錄移動到另一個記錄的方法程序的基本元素,它含有定義其特徵的屬性,定義其任務和識別它可以響應的事件的方法。控制項和窗體是Visual Basic中所有對象的示例。
對象
一個控制項、窗體等都可被看作一個對象。
過程
為完成某些特定的任務而編寫的代碼段,過程通常用於響應特定的事件,也可以當作應用程序的用戶自定義函數來使用。
屬性
屬性是組成用戶界面的各對象的性質的具體描述。例如上述「對象」中所提到的尺寸、位置、顏色、寬度、高度等等都稱為控制項的 屬性。屬性決定對象的外觀,有時也決定對象的行為。對象的屬性絕大部分是VB中已經事先定義好的,但也有的屬性是需要在應用 過程中才去定義的。屬性即可為對象提供數據,也能從對象取回信息。 [編輯本段]Visual Basic 的局限性 不支持繼承
VB5和VB6都是基於對象的編程語言,但是不包含繼承特性。VB中提供了特殊的類的功能,但是還是不能滿足程序員的需求。VB.net 包含了所有面向對象的特性。
多線程無原生支持
Visual Basic 對於多線程無原生支持,只能通過 Windows API 的調用實現。VB.Net 2002 以及之後的版本,都支持多線程技術。
異常處理不完善
Visual Baisc 中內置異常處理,即使未寫異常處理代碼,一旦用戶出錯也會彈出一個明確寫出出錯原因對話框,接著程序終止。
Visual Basic 中可以使用 Err.Raise 拋出異常。對系統及用戶拋出的異常的處理常用兩種模式:一是使用 On Error Resume Next 處理錯誤;另一種是使用 On Error Goto 將運行引入錯誤處理代碼。但相對 C++ 等語言而言,這樣的異常處理破壞了代碼的結構。