C++完成有半個月了,在結束后的這段時間里開始系統的學UC和Oracle,UC不過才研究了兩個星期,基本上都是一些基礎的操作,UC因為比較難,因此熟練度25%左右,Oracle相對來說很簡單,熟練度一開始就應該有45%,由于之后還有Windows系統和MFC幾大框架需要學習,因此接下來只需要把UC提升到了解階段就ok了。至于說熟悉階段、掌握階段以及應用階段只有完成幾個項目后再來專精了。
一方面是UC,Unix和windows一樣也是個系統,擁有自己的函數,UC換句話說就是Unix環境下C語言的底層語言,再通過UC函數進入內核,因此在這個系統中UC效率比C語言要高,因為C語言要首先轉換成UC語言。因為要背的東西多,所以我覺得有點難,接收的速度不夠快,所以呢只求理解、理解萬歲!首先剛接觸UC的時候就是一大堆命令和基礎知識,之前的大半年的編程都是用這個系統,所以久而久之,用的多這些基本的命令也都記住了,比如mkdir創建一個文件、rmdir刪除文件、cd進入或退出文件、gcc運行C語言.c程序、g++運行C++的.cpp程序,還有各種查看進程、改權限、查看文件大小、復制文件、打包靜態庫\共享庫等等的操作。記得剛接觸這個系統來寫C語言的第一個程序hello world的時候,我連Unix是什么東西都不知道,而且用的很糾結。話說之前我只用過C語言寫了單片機程序,都過去了2年了,沒想到2年之后又開始接觸編程,不過不是嵌入式,而是電腦軟件方向的編程,因此自然就需要大量的數據輸入輸出,而我卻連一個最基本的printf和scanf都不會寫。。。更何況是進階的輸入輸出sprintf、getchar、fgets了,也不知道是啥時候開始會寫了,可能接觸時間長了就會了。
UC完成基本的操作后就能簡單的用鍵盤在終端里操作各種文件,這時候不需要鼠標操作了,也就是完全的鍵盤流,接下來才能夠進行UC編程,在這個系統里UC可以完全代替C語法,畢竟是C的底層,因此真的要精通比C還要難,話說有人研究了2年內存管理都還沒完全搞明白。第一通過UC編程能夠修改UC的環境變量,換句話說就是修改命令,這一點和修改快捷鍵是一樣的。第二UC可以和C一樣進行內存管理,C語言是malloc和free操作;C++是new和delete操作;而UC是sbrk、brk、mmap、munmap函數來操作了,復雜度也是UC最高,經常容易分配內存出紕漏,要么就內存用完了,要么就是用錯了地方。第三就是UC的文件操作,和C的文件操作一樣用UC系統函數操作了,但需要自己操作緩沖區,這一點是C語言沒有的,因此越進入底層,操作的東西就越多,也越麻煩,就像java編程沒有內存管理。因此也就容易多了?傮w來說Windows和Unix雖然系統不同,但原理都是差不多的,虛擬內存、內存映射、共享庫、信號通信、進程和線程的原理等等,主要差別就在于函數的不同和用法的不同。
另一方面的數據庫Oracle,終于把查詢部分學了一半,比如一個嵌套的查詢,顯示出每個人的姓名和職稱,如果沒有職稱則顯示為老板: select first_name,nvl(to_char(manager_id),'BOSS') from s_emp; 查詢語句最基本的關鍵字就是select和from,語句都不能離開它們,然后才有其它的關鍵字,比如排除重復的排重顯示關鍵字distinct,能夠把滿足的數據排除重復后再輸出數據、空值NULL的處理關鍵字nvl、更加深入的限制數據關鍵字where,能夠過濾不滿足要求的數據、將一系列數據從小到大的排序關鍵字order by、各種查詢的函數,實現各種更高級的查找功能,以及一些運算符,用來實現表中所有滿足數據計算后的結果。剩下還有一半的查詢就是接下來的需要了解的內容了。
所以啊,精通一個技術還真不容易,感覺永遠都精通不了,我算是體會了。IT就是這樣,知識更新也快,而且又不是那么好學,我感覺我腦筋不夠用了,能否再加個內存條? 多線程記憶和思考......這也只是幻想而已,因為現在還沒發展到納米時代,每天一覺醒來,看看周圍,就想吐槽,切!怎么還是這個時代。希望明天一起來就發現已經從信息時代升級到數字時代,后天一起來就發現已經從數字時代升級到納米時代,這樣才對嘛......
|