Re: [閒聊] 結論是C#比Java厲害嗎
※ 引述《arrenwu (最是清楚哇她咩)》之銘言:
: 而如果追求更方便、同時短短幾行就能引出很大效果的程式語言,
: 那從Python入門也行。這個對程式麻瓜最友善
: 缺點就是使用者對於電腦處理整數、小數點、字串的方式,
: 以及記憶體管理會很沒有概念。
: 有人可能覺得這些計概會教,我個人覺得是...
: 這些東西只有摸了才會知道在幹嘛,讀過計概就只有「反正底下就是01010101」
:
: 推 phoenix286: 就算不清楚電腦處理資料型態及記憶體管理的方式 12/20 08:33: → phoenix286: 這對使用者會有什麼影響嗎? 12/20 08:33整數簡單,會出現問題通常是浮點數
------ Pytthon 3.9.7 ------
>> x = 0.1 + 0.2
>> x - 0.3 == 0.0
False
表面上看起來是 "0.1 + 0.2 - 0.3 不等於 0.0"的怪事,
但實際上是你打進一個浮點數,實際上程式存進去的數值跟人想的不一樣。
這必須要知道電腦怎麼處理資料
另外關於記憶體管理的部分,我講記憶體管理可能容易造成誤解,
我想描述的是在 C 裡面 malloc 或 new 算子在記憶體裡面創造物件的機制
最終是要了解 pass by reference 和 pass by value 的差異。
C/C++ 會強迫使用者要理解這差異
但是Java以上隱藏了pointer的存在後,這部分就比較模糊
這差異的重要性在於...
x = 3;
y = x; # 複製x到y
y = 9; # 現在設定y的數值為9
x -> 3
y -> 9
非常直覺的結果
但換成 numpy 的矩陣:
import numpy as np
A = np.array([[1,2],[3,4]])
B = A # 複製A到B
B[0,0] = 9 # 改動B的第一個entry為9
B -> [9,2]
[3,4]
A -> [9,2] <---- 你只有改B,但A也被改動了
[3,4]
要理解這個情況,使用者無論如何都要理解pointer的概念
啊對了,矩陣那個例子,在MATLAB不成立
MATLAB 矩陣的等號算子是 deepcopy 嘻嘻
不過記憶體管理也確實該要了解啦
因為有時候你一個不小心還是會在Python造成memory leak。
如果沒有記憶體管理概念的話,你連你的程式可能造成memory leak都不知道
--
角卷綿芽Line貼圖上市囉~
24種可愛貼圖,只要30元!
https://pbs.twimg.com/media/FTwzC2AUYAAF5AY.jpg
--
只好出動邏輯大師javascript了
js不好嗎
說來慚愧 javascript雖然夯到爆 但我沒用過
大大都用什麼
個人娛樂用Anaconda Python
js 1=='1' 嘻嘻
C#有decimal可以用,不會出現0.3那個例子的問題,如
可你很在意十進位精度時可使用(金融計算時尤其重要
我覺得浮點數是另個單獨的問題啦
js 0=="0", 0==[] 都是 true, 但是 "0"==[] 會是 false
==
我通常都是教人: 沒必要的話就全部用整數記資料
js爛死了幹
但是js超爆幹夯耶
NaN==NaN 也是 false
真的要寫需要大量數值方法的程式就是開 Matlab 了
用Python也可以啦
我還看過全部用字串記的= =
因為js是用在前台的,戰場不同
js真的是邏輯大師 py算什麼
不過這年頭IDE都會跳warning告訴你memory leak
我也常用所以知道問題 不過還好現在我只搞後端 前端不用
弄了 基本上可以跳過 JS只適合搞一些簡單的東西 再多都
要套件去弄
動態型別語言都會有很多魔法 JS只是裡面巫力特別高的
Python 的函數,變數可以不用宣告型別。 這點有時候會搞得debug滿痛苦的
傳址跟傳值搞得懂的話 C++用起來會有人機一體的感覺
很舒服
我...嗯...只覺得C++的macro能搞得error log很難懂而已 倒是從來沒有人機一體的感覺
※ 編輯: arrenwu (98.45.195.96 美國), 12/20/2023 10:41:48現在寧願值都在後端處理完在丟到前端做簡單處理就好 JS
本身能不用就不用==
越方便就越不清楚...,畢竟是js,一個var包山包海
以算力來說 複雜的事情本來就該在後端做完
這年頭type safe對軟體開發很重要 py其實不能亂寫
經典js meme
我這邊 C++ 趨勢都是沒在寫 macro 了, 太難維護
只有var是幾年前的事了 現在有let const
js真的是很多奇葩的玩法可以搞人XD
js在瀏覽器按F12就可以用console測一些指令
這個不是基本之一嗎?不管學Python Java都會遇到
寫JavaScript 就自求多福,自己不搞不表示同事不搞
補另個點,R跟matlab一樣不會改動到前者的array
python記得有參照機制吧
值本來就是越後面處理越好吧,js 用途就是網頁框架都用
他,又沒人在用別的語言
原來拍森也會這樣==
學過其他語言再看js會覺得這是啥小XD
這邊可以測試一下用浮點數玩弄電腦
0.1 0.2 0.3 0.4 0.6 0.7 0.8 0.9 都是不準的
那個浮點數的問題其實c也會有,畢竟電腦處理小數的方式
都是2的負次方在做
但是0.5 0.25 0.75 1.5 2.125 等等就會是準的
所以不會有人開0.25 + 0.5 != 0.75的玩笑
浮點數就是效率>>精確度 各語言也都有精確度>>效率的
資料型態,算錢的時候如果需要就會改用那些
64bit浮點數雖然算一次看起來好像是準的,但你連算100
次還是會大爆炸
都2023了 浮點問題還沒克服 笑鼠
你可以寫出完全沒有浮點問題的程式,然後如果是遊戲引
擎的話FPS保守比競爭者少了三倍左右
那你是要克服浮點問題還是老老實實賣遊戲
不過如果是計算無人機去冥王星探測一圈這種應用,我就
不知道會採用哪種策略了,這個貪效率可能真的會出事
我只想知道為什麼要一直出不同的程式語言
浮點問題的確很麻煩 能用int 就用int 判斷式能用str
就用str 純粹數字有時候就是會搞人
這就要去問各家廠商了 不管硬體軟體 很多廠商就是喜歡
自創自己的語言 然後87%跟ja python c++很類似
最簡單的例子 顯示卡又看不懂C++ 你想要他高效率地做
牛做馬,你就要幫他創造他能懂的語言
新語言的發展通常跟解決效能還有特化某領域有關,語言跟
產業有關,產業跟錢有關
近代的發展已經開始自創天生願意做牛做馬的卡(已經不
叫顯示卡了),畢竟人類的慾望無窮無盡,顯示卡表示我
就一介算螢幕畫面的,你們怎麼要求越來越多
沒到一直出吧 主流語言裡最年輕的rust也有8年了XD
不過近期是有些人打算弄點新東西幹掉C++就是
湊數量的話可以請esoteric language出來開趴
感謝解答!
現在最有機會取代 C++ 的不就是 Rust 嗎
Linux內核, 微軟Windows系統元件都有相關新聞
可以根絕人為開發疏失 造成記憶體洩漏
wsl: memory leak 叫我?
更不要講還有防禦性寫程式 故意埋地雷甚至開後門的
不要相信任何東西
這牽涉到效率問題,C++允許你直接插腦控制記憶體內容
有時候就是真的要這樣才能逼出極限的運算效率
當然手一滑就leak到天邊了,不過你需要效率時就是需要
「絕對不會memory leak」且 「效率永遠發揮到極限」的
程式語言,如果真的存在,我也想要去跪舔啊
Rust之所以會討論到取代 C++ 就是沒有犧牲自由調度空間吧
扯一堆不如看人家報告為啥用rust做kernel module比較實在
C++你想人機一體,先去搞懂左值右值再說
防禦性程式碼到底是不是從中國開始的阿 超虎爛欸
C++複雜是它的缺點也是優點 光是保留字就有60幾個 相比C只
有30幾個 語法多元實際平常會用的語法可能只有20% 如果只
有自己寫倒還好 最怕的是你旁邊那個老哥平常用的20%跟你用
的20%是空集合
浮點數rounding不是很基本的嗎
之前沒用deepcopy de到天荒地老
C++比Java難多了 lvalue rvalue reference, universal ref
erence先搞懂再說..
沒碰過JS 但看過很多JS相關的玩笑或鬼故事XD
為什麼要出不同語言?這問題就像明明就有菜刀為什麼要
弄柴刀、鐮刀、生魚片刀、開山刀一樣
Python也有decimal, 你第一個例子根本不是Python獨有的
問題
C++跟C誰比較強?
98
首Po54%覺得C#比較好 還是其實兩個都很爛 --30
這類問題可以參考一下 TIOBE index Link: 不過也就是參考啦,他們有說明他們評分的方式 The ratings are based on the number of skilled engineers world-wide, courses and third party vendors. Popular search engines such as Google, Bing, Yahoo!,X
C#比java 好上手 而且還能搭配Unity使用 一堆奇奇怪怪的class 都有人寫 所以我個人覺得c#是比java 厲害的 ----29
程式語言多樣其實跟幾個因素有關。 1. 難度,最直觀的 C 語言從入門到放棄不是說說的, 很多語言都是選擇把C當底層或者 library 另外自己搞一個。 要初學者直上 C 搞懂 pass by value ,pass by point5
你各位都說得很好 不過我得說 PHP才是世界上最美的語言 根據PHP的官方文件 "PHP is the best language for web programming"
29
[心得] 圖解C語言 Variable x Array x Pointer影片連結: 影片封面: 這部影片幫大家了解C語言中,Variable x Array x Pointer 之間資料結構的特點與差異 在講解中,我們將能了解這三者在記憶體中,彼此間內容儲存與運作模式的不同處。 主要重點:31
Re: [閒聊] 王國之淚去年延期時已接近完成→ spfy: 雖然有人解釋但我還是想不通倒轉要怎麼實作 不可能把林克附 → spfy: 近所有物件的軌跡都長期記錄起來吧? 記錄一個物件在空間中的姿態(pose: 包含位移跟旋轉) 一般是用一個4x4的浮點數(float: 有小數點的數字, 4 byte)矩陣 也就是說紀錄一筆位置, 記憶體大小是4x4x4=64 byte30
[北美] Firmware Embedded 大量面試心得##引言 版上北美科技業文章多為Software的相關職缺跟心得 Firmware Embedded相關文章跟職缺很少 想說來貢獻一下我這半年來面試的心得 拋磚引玉一下 本文也適合一些在台灣IC design,OEM,ODM背景的工程師22
[問卦] Python是怎麼突然爆紅的?在2015年左右以前 程式語言的霸主要嘛以偏底層可以控制記憶體的C/C++為主 要嘛是物件導向能力強大的Java、C# 或者是網頁在使用的html、php、JavaScript 即使是資料科學分析也有R 工程科學也有matlab 結果就是Python在這幾年迅速竄起 直追Java和C的龍頭寶座19
Re: [討論] AI晶片這我來回答吧 AI晶片一般是指用來加速深度學習模型推理的晶片 如果是訓練通常還是利用Gpu 因為生態系比較成熟 那麼深度學習推理時間會耗在哪裡呢 通常就是convolution 或是Gemm24
Re: [問卦] 初學Python是不是養成一堆壞習慣?你在講什麼鬼 這個很顯然就是因為先學C導致寫法不pythonic 以你舉的第一個例子來說 應該會是 res = [i % 2 == 0 for i in range(len(list))] 有np的話第一個例子連for in 都省了 import numpy as np res = np.asarray(range(len(list))) % 2 == 022
Re: [硬體] 蘋果高層認為Mac 8GB Ram等效PC 16GB Ram其實就算是輕度使用者,8GB可能還是不夠用的 像這類型測試往往還會忘了測 memory leak 問題 這問題就是你 app 開久後記憶體會越用越多 瀏覽器幾乎都會有這種通病,舉例來說瀏覽器本身用了500mb, 你只開了一個tab,用了 100mb,然後再把那個唯一的tab關了,14
[問卦] 什麼樣的人會用MATLAB?大家都知道一個人用的程式語言會洩漏一點他自身的資訊。 C++ ---> 發明輪子的人與為了優化1%效率要再發明一次輪子的人 java ---> 20年前的時尚尖端,那時候寫這個、教這個的比炒房還好賺。 Fortran ---> 基礎科學研究者,絕對不是資工系 python ---> 效率不重要,我想達到的目的才是重點懂嗎?6
[心得] Java perf profiling 分享原本要想講心得,但想一想每個系同異質性太高 又難有 SOP, 因此先以可以用的工具以及分析面相下手 當 SRE 回報了問題: Case 1. 今天開始 latency 變高,但 QPS 沒比較多,也沒 Deploy 新版 Case 2. CPU 用不到 50% 開始 timeout5
Re: [請益] 如何當軟體QA??測試其實很多概念 難度其實不一定低於RD 首先來講講環境 DevOps之所以出現 最主要就是解決環境差異造成的問題
爆
[閒聊] 中國無錫學校刺殺8人案 兇手頭像是星野愛57
[閒聊] 最近大陸流行張獻忠 為什麼阿?58
[閒聊] 我要跟牛尾憲輔道歉49
[閒聊] 我推 阿夸到底對帽子有沒有戀愛情感?47
[情報] PS獎盃白金王17年帳號遭Ban身心受創,得45
[閒聊] 所以小傑就不出現了喔?51
[閒聊] 為什麼獵人追加設定沒被罵??37
[holo] Kobo 花籃炎上事件36
Re: [蔚藍] 大家對於星野的看法?39
[閒聊] 有人知道黑絲這條是叫什麼嗎29
[情報] 井口裕香 雜誌封面26
[閒聊] 角川傳說級輕小說28
[Vtub] 第一屆Hololive甲子園表彰者一覽27
[閒聊] 趙雲的形象從什麼時候變成帥哥了53
[閒聊] 怎麼決定Figure是要預訂還是等現貨?23
[閒聊] 悟空的聲優是絕對不能換嗎?41
[咒術] 羂索在被虎杖爸操的時候 都在想些啥?24
[正太]《赤潮ZeroERA》中國團隊將推出全正太二遊21
[閒聊] 碎蜂COS36
[情報] 鋼彈模型明年最高漲43%21
[閒聊] 武士道:給我看Mygo27
[公連] 新限定角色 若菜20
[閒聊] 有沒有那種 真的真的!好想去東京!的32
[鳴潮] 2.0冰槍內鬼圖18
Re: [蔚藍] 大家對於星野的看法?17
[閒聊] 會不會是DEI的審美進化了?17
Re: [holo] Kobo 花籃炎上事件17
[Vtub] 小箱or個人Vtuber 1117 DD串17
[繪圖]3張gura委託圖!17
[閒聊] 鋼彈X的結局是啥意思?