m*S
2 楼
熟读这180句古典名句,出口成章很轻松!
《诗经》
1.言者无罪,闻者足戒。
2.他山之石,可以攻玉。
3.高山仰止,景行行止。
4.如切如磋,如琢如磨。
5.昔我往矣,杨柳依依;今我来思,雨雪霏霏。
6.战战兢兢,如临深渊,如履薄冰。
《易经》
7.天行健,君子以自强不息;地势坤,君子以厚德载物。
8.穷则变,变则通,通则久
《老子》
9.祸兮,福之所倚;福兮,祸之所伏。
10.天网恢恢,疏而不漏。
11.知人者智,自知者明。
12.合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。
13.大直若屈,大巧若拙,大辩若讷。
14.信言不美,美言不信。善者不辩,辩者不善。
《尚书》
15.星星之火,可以燎原。
16.为山九仞,功亏一篑。
17.满招损,谦受益。
《左传》
18.言之无文,行而不远。
19.皮之不存,毛将焉附?
20.辅车相依,唇亡齿寒。
21.俭,德之共也;侈,恶之大也。
22.居安思危,思则有备,有备无患。
23.人非圣贤,孰能无过?过而能改,善莫大焉。
《国语》
24.从善如登,从恶如崩。
25.防民之口,甚于防川。
《论语》
26.发愤忘食,乐以忘忧,不知老之将至。
27.巧言乱德,小不忍则乱大谋。
28.名不正,则言不顺;言不顺,则事不成。
29.博学而笃志,切问而近思,仁在其中矣。
30.岁寒,然后知松柏之后凋也。
31.逝者如斯夫,不舍昼夜。
32.工欲善其事,必先利其器。
33.君子坦荡荡,小人长戚戚。
34.往者不可谏,来者犹可追。
35.三军可夺帅也,匹夫不可夺志也。
36.见贤思齐焉,见不贤而内自省也。
37.士不可不弘毅,任重而道远。
38.欲速则不达,见小利则大事不成。
39.言必行,行必果,果必信。
40.知之者不如好之者,好之者不如乐之者。
41.其身正,不令而行;其身不正,虽令不从。
42.已所不欲,勿施于人。
43.仰之弥高,钻之弥坚;瞻之在前,忽焉在后。
44.有则改之,无则加勉。
45.仁者见仁,智者见智。
46.不患贫而患不均,不患寡而患不安。
47.均无贫,和无寡,安无倾。
48.君子和而不同,小人同而不和。
49.欲治其国者,先齐其家;欲齐其家者,先修其身。
《礼记》
50.一张一弛,文武之道也。
51.学然后知不足,教然后知困。
52.玉不琢,不成器;人不学,不知道。
53.独学而无友,则孤陋而寡闻。
54.凡事豫(预)则立,不豫(预)则废。
55.博学之,审问之,慎思之,明辨之,笃行之。
《孟子》
56.民为贵,社稷次之,君为轻。
57.老吾老,以及人之老;幼吾幼,以及人之幼。
58.穷则独善其身,达则兼济天下。
59.富贵不能淫,贫贱不能移,威武不能屈。
60.天时不如地利,地利不如人和。
61.生,亦我所欲也;义,亦我所欲也;二者不可得兼,舍生而取义者也。
62.一叶障目,不见泰山。两耳塞豆,不闻雷霆。
63.志士仁人,无求生以害仁,有杀身以成仁。
64.权,然后知轻重;度,然后知长短。
65.爱人者,人恒爱之;敬人者,人恒敬之。
《荀子》
66.蓬生麻中,不扶自直;白沙在涅,与之俱黑。
《庄子》
67.君子之交淡如水,小人之交甘若醴。
68.吾生也有涯,而知也无涯。
《管子》
69.一年之计,莫如树谷;十年之计,莫如树木;终身之计,莫如树人。
70.仓廪实而知礼节,衣食足而知荣辱。
《韩非子》
71.千里之堤,溃于蚁穴。
《离骚》
72.长太息以掩涕兮,哀民生之多艰。
73.亦余心之所善兮,虽九死其犹未悔。
74.路曼曼其修远兮,吾将上下而求索。
《战国策》
75.风萧萧兮易水寒,壮士一去兮不复还。
76.士为知己者死,女为悦己者容。
《吕氏春秋》
77.流水不腐,户枢不蠹。
78.察己则可以知人,察今则可以知古。
秦汉魏晋南北朝
79.泰山不让土壤,故能成其大;河海不择细流,故能就其深。(李斯《谏逐客书》)
司马迁《史记》
80.人固有一死,或重于太山,或轻于鸿毛,用之所趋异也。
81.以欲以究天人之际,通古今之变,成一家之言。
82.失之毫厘,谬以千里。
83.桃李不言,下自成蹊。
84.智者千虑,必有一失;愚者千虑,必有一得。
85.水滴石穿,绳锯木断。
86.众口铄金,积毁销骨。
87.大行不顾细谨,大礼不辞小让。
88.运筹帷幄之中,决胜千里之外。(运筹帷幄之中,制胜于无形)
89.此鸟不飞则已,一飞冲天;不鸣则已,一鸣惊人。
90.良药苦口利于病,忠言逆耳利于行。
91.飞鸟尽,良弓藏;狡兔死,走狗烹。
92.耳闻之不如目见之,目见之不如足践之。(刘向《说苑》)
93.与善人居,如入芝兰之室,久而不闻其香;与恶人居,如入鲍鱼之肆,久而不闻其臭
。(刘向《说苑》)
94.水至清则无鱼,人至察则无徒(东方朔《答客难》)
95.塞翁失马,焉知非福?(《淮南子》)
96.正其义不谋其利,明其道不计其功。(班固《汉书》)
97.临渊羡鱼,不如退而结网。(班固《汉书?董仲舒传》)
98.前车之覆,后车之鉴。(班固《汉书》)
99.文章,经国之大业,不朽之盛事。(曹丕《典论。论文》)
100.山不厌高,海不厌深。周公吐哺,天下归心。(曹操《短歌行》)
101.老骥伏枥,志在千里;烈士暮年,壮心不已。(曹操《龟虽寿》)
102.捐躯赴国难,视死忽如归。(曹植《白马篇》)
103.静以修身,俭以养德。非淡泊无以明志,非宁静无以致远。夫学须静也,才须学也
。非学无以广才,非志无以成学。(诸葛亮《诫子书》)
104.鞠躬尽瘁,死而后已。(诸葛亮《后出师表》)
105.勿以恶小而为之,勿以善小而不为。(陈寿《三国志》)
106.士别三日,即更刮目相待。(陈寿《三国志》)
107.读书百遍,其义自见。(陈寿《三国志》)
108.国以民为本,民以食为天。(陈寿《三国志》)
109.一年之计在于春,一日之计在于晨。(萧绎《纂要》)
110.暮春三月,江南草长,杂花生树,群莺乱飞。(丘迟《与陈伯之书》)
111.精骛八极,心游万仞。(陆机《文赋》)
112.失之东隅,收之桑榆。(范晔《后汉书》)
113.精诚所至,金石为开。(范晔《后汉书》)
114.不入虎穴,焉得虎子?(范晔《后汉书》)
115.阳春之曲,和者必寡;盛名之下,其实难副。(范晔《后汉书》)
116.百川东到海,何时复西归?少壮不努力,老大徒伤悲。(汉乐府《长歌行》)
117.采菊东篱下,悠然见南山。(陶渊明《饮酒》)
118.奇文共欣赏,疑义相与析。(陶渊明《移居》)
119.羁鸟恋旧林,池鱼思故渊。(陶渊明《归园田居》)
120.操千曲而后晓声,观千剑而后识器。(刘勰《文心雕龙》)
121.登山则情满于山,观海则意溢于海。(刘勰《文心雕龙》)
122.大丈夫宁可玉碎,不能瓦全。(《北齐书》)
123.蝉噪林逾静,鸟鸣山更幽。(王籍《入若耶溪》)
唐代
124.云销雨霁,彩彻区明。落霞与孤鹜齐飞,秋水共长天一色。(王勃《滕王阁序》)
125.老当益壮,宁移白首之心;穷且益坚,不坠青云之志。(王勃《滕王阁序》)
126.求木之长者,必固其根本;欲流之远者,必浚其泉源;思国之安者,必积其德义。(
魏徵《谏太宗十思疏》)
127.前不见古人,后不见来者。念天地之悠悠,独怆然而涕下。(陈子昂《登幽州台歌
》)
128.春潮带雨晚来急,野渡无人舟自横。(韦应物《滁州西涧》)
129.海上生明月,天涯共此时。(张九龄《望月怀远》)
130.不知细叶谁裁出,二月春风似剪刀。(贺知章《咏柳》)
131.莫愁前路无知己,天下谁人不识君。(高适《别董大》)
132.疾风知劲草,板荡识诚臣。(李世民《赠萧瑀》)
133.空山新雨后,天气晚来秋。明月松间照,清泉石上流。竹喧归浣女,莲动下渔舟。
随意春芳歇,王孙自可留。(王维《山居秋暝》)
134.独在异乡为异客,每逢佳节倍思亲。遥知兄弟登高处,遍插茱萸少一人。(王维《
九月九日忆山东兄弟》)
135.渭城朝雨浥轻尘,客舍青青柳色新。劝君更尽一杯酒,西出阳关无故人。(王维《
送元二使安西》)
136.白日依山尽,黄河入海流。欲穷千里目,更上一层楼。(王之涣《登鹳鹊楼》)
137.洛阳亲友如相问,一片冰心在玉壶。(王昌龄《芙蓉楼送辛渐》)
138.黄沙百战穿金甲,不破楼兰终不还。(王昌龄《从军行》)
139.忽如一夜春风来,千树万树梨花开。(岑参《白雪歌送武判官归京》)
140.山光悦鸟性,潭影空人心。(常建《题破山寺后禅院》)
141.孤帆远影碧空尽,惟见长江天际流。(李白《送孟浩然之广陵》)
142.清水出芙蓉,天然去雕饰。(李白《诗论》)
143.天生我材必有用,千金散尽还复来。(李白《将进酒》)
144.安能摧眉折腰事权贵,使我不得开心颜!(李白《梦游天姥吟留别》)
145.抽刀断水水更流,举杯销愁愁更愁。(李白《宣州谢朓楼饯别校书叔云》)
146.随风潜入夜,润物细无声。(杜甫《春夜喜雨》)
147.正是江南好风景,落花时节又逢君。(杜甫《江南逢李龟年》)
148.读书破万卷,下笔如有神。(杜甫《奉赠韦左丞丈二十二韵》)
149.为人性僻耽佳句,语不惊人死不休。(杜甫《江上值水如海势聊短述》)
150.朱门酒肉臭,路有冻死骨。(杜甫《自京赴奉先县咏怀五百字》)
151.国破山河在,城春草木深。感时花溅泪,恨别鸟惊心。烽火连三月,家书抵万金。
(杜甫《春望》)
152.露从今夜白,月是故乡明。(杜甫《月夜忆舍弟》)
153.笔落惊风雨,诗成泣鬼神。(杜甫《寄李白。二十韵》)
154.文章千古事,得失寸心知。(杜甫《偶题》)
155.三顾频烦天下计,两朝开济老臣心。出师未捷身先死,长使英雄泪满襟。(杜甫《
蜀相》)
156.尔曹身与名俱灭,不废江河万古流。(杜甫《戏为六绝句》)
157.星垂平野阔,月涌大江流。(杜甫《旅夜书怀》
158.昔闻洞庭水,今上岳阳楼。吴楚东南坼,乾坤日夜浮。亲朋无一字,老病有孤舟。
戎马关山北,凭轩涕泗流。(杜甫《登岳阳楼》)
159.谁言寸草心,报得三春晖。(孟郊《游子吟》)
160.晴川历历汉阳树,芳草萋萋鹦鹉洲。日暮乡关何处是?烟波江上使人愁。(崔颢《黄
鹤楼》)
161.潮平两岸阔,风正一帆悬。(王湾《次北固山下》)
162.蚍蜉撼大树,可笑不自量。(韩愈《调张籍》)
163.业精于勤荒于嬉,行成于思毁于随。(韩愈《进学解》)
164.天街小雨润如酥,草色遥看近却无。(韩愈《早春呈水部张十八员外》)
165.曾经沧海难为水,除却巫山不是云。(元稹《离思》)
166.衰兰送客咸阳道,天若有情天亦老。(李贺《金铜仙人辞汉歌》)
167.黑云压城城欲摧,甲光向日金鳞开。(李贺《雁门太守行》)
168.沉舟侧畔千帆过,病树前头万木春。(刘禹锡《酬乐天扬州初逢席上见赠》)
169.东边日出西边雨,道是无晴却有晴。(刘禹锡《竹枝词》)
170.朱雀桥边野草花,乌衣巷口夕阳斜。旧时王谢堂前燕,飞入寻常百姓家。(刘禹锡
《乌衣巷》)
171.千淘万漉虽辛苦,吹尽狂沙始到金。(刘禹锡《浪淘沙》)
172.自古逢秋悲寂寥,我言秋日胜春朝。晴空一鹤排云上,便引诗情到碧霄。(刘禹锡
《秋词》)
173.文章合为时而著,歌诗合为事而作。(白居易《与元九书》)
174.野火烧不尽,春风吹又生。(白居易《赋得古原草送别》)
175.试玉要烧三日满,辨材须待七年期。(白居易《放言》)
176.日出江花红胜火,春来江水绿如蓝。(白居易《忆江南》)
177.远上寒山石径斜,白云生处有人家。停车坐爱枫林晚,霜叶红于二月花。(杜牧《
山行》).
178身无彩凤双飞翼,心有灵犀一点通。(李商隐《无题》)
179.历览前贤国也家,成由勤俭败由奢。(李商隐《咏史》)
180.天意怜幽草,人间重晚晴。(李商隐《晚晴》)
181.君问归期未有期,巴山夜雨涨秋池。何当共剪西窗烛,却话巴山夜雨时。(李商隐
《夜雨寄北》)
182.月落乌啼霜满天,江枫渔火对愁眠。姑苏城外寒山寺,夜半钟声到客船。(张继《
枫桥夜泊》)
183.溪云初起日沉阁,山雨欲来风满楼。(许浑《咸阳城东楼晚眺》)
《诗经》
1.言者无罪,闻者足戒。
2.他山之石,可以攻玉。
3.高山仰止,景行行止。
4.如切如磋,如琢如磨。
5.昔我往矣,杨柳依依;今我来思,雨雪霏霏。
6.战战兢兢,如临深渊,如履薄冰。
《易经》
7.天行健,君子以自强不息;地势坤,君子以厚德载物。
8.穷则变,变则通,通则久
《老子》
9.祸兮,福之所倚;福兮,祸之所伏。
10.天网恢恢,疏而不漏。
11.知人者智,自知者明。
12.合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。
13.大直若屈,大巧若拙,大辩若讷。
14.信言不美,美言不信。善者不辩,辩者不善。
《尚书》
15.星星之火,可以燎原。
16.为山九仞,功亏一篑。
17.满招损,谦受益。
《左传》
18.言之无文,行而不远。
19.皮之不存,毛将焉附?
20.辅车相依,唇亡齿寒。
21.俭,德之共也;侈,恶之大也。
22.居安思危,思则有备,有备无患。
23.人非圣贤,孰能无过?过而能改,善莫大焉。
《国语》
24.从善如登,从恶如崩。
25.防民之口,甚于防川。
《论语》
26.发愤忘食,乐以忘忧,不知老之将至。
27.巧言乱德,小不忍则乱大谋。
28.名不正,则言不顺;言不顺,则事不成。
29.博学而笃志,切问而近思,仁在其中矣。
30.岁寒,然后知松柏之后凋也。
31.逝者如斯夫,不舍昼夜。
32.工欲善其事,必先利其器。
33.君子坦荡荡,小人长戚戚。
34.往者不可谏,来者犹可追。
35.三军可夺帅也,匹夫不可夺志也。
36.见贤思齐焉,见不贤而内自省也。
37.士不可不弘毅,任重而道远。
38.欲速则不达,见小利则大事不成。
39.言必行,行必果,果必信。
40.知之者不如好之者,好之者不如乐之者。
41.其身正,不令而行;其身不正,虽令不从。
42.已所不欲,勿施于人。
43.仰之弥高,钻之弥坚;瞻之在前,忽焉在后。
44.有则改之,无则加勉。
45.仁者见仁,智者见智。
46.不患贫而患不均,不患寡而患不安。
47.均无贫,和无寡,安无倾。
48.君子和而不同,小人同而不和。
49.欲治其国者,先齐其家;欲齐其家者,先修其身。
《礼记》
50.一张一弛,文武之道也。
51.学然后知不足,教然后知困。
52.玉不琢,不成器;人不学,不知道。
53.独学而无友,则孤陋而寡闻。
54.凡事豫(预)则立,不豫(预)则废。
55.博学之,审问之,慎思之,明辨之,笃行之。
《孟子》
56.民为贵,社稷次之,君为轻。
57.老吾老,以及人之老;幼吾幼,以及人之幼。
58.穷则独善其身,达则兼济天下。
59.富贵不能淫,贫贱不能移,威武不能屈。
60.天时不如地利,地利不如人和。
61.生,亦我所欲也;义,亦我所欲也;二者不可得兼,舍生而取义者也。
62.一叶障目,不见泰山。两耳塞豆,不闻雷霆。
63.志士仁人,无求生以害仁,有杀身以成仁。
64.权,然后知轻重;度,然后知长短。
65.爱人者,人恒爱之;敬人者,人恒敬之。
《荀子》
66.蓬生麻中,不扶自直;白沙在涅,与之俱黑。
《庄子》
67.君子之交淡如水,小人之交甘若醴。
68.吾生也有涯,而知也无涯。
《管子》
69.一年之计,莫如树谷;十年之计,莫如树木;终身之计,莫如树人。
70.仓廪实而知礼节,衣食足而知荣辱。
《韩非子》
71.千里之堤,溃于蚁穴。
《离骚》
72.长太息以掩涕兮,哀民生之多艰。
73.亦余心之所善兮,虽九死其犹未悔。
74.路曼曼其修远兮,吾将上下而求索。
《战国策》
75.风萧萧兮易水寒,壮士一去兮不复还。
76.士为知己者死,女为悦己者容。
《吕氏春秋》
77.流水不腐,户枢不蠹。
78.察己则可以知人,察今则可以知古。
秦汉魏晋南北朝
79.泰山不让土壤,故能成其大;河海不择细流,故能就其深。(李斯《谏逐客书》)
司马迁《史记》
80.人固有一死,或重于太山,或轻于鸿毛,用之所趋异也。
81.以欲以究天人之际,通古今之变,成一家之言。
82.失之毫厘,谬以千里。
83.桃李不言,下自成蹊。
84.智者千虑,必有一失;愚者千虑,必有一得。
85.水滴石穿,绳锯木断。
86.众口铄金,积毁销骨。
87.大行不顾细谨,大礼不辞小让。
88.运筹帷幄之中,决胜千里之外。(运筹帷幄之中,制胜于无形)
89.此鸟不飞则已,一飞冲天;不鸣则已,一鸣惊人。
90.良药苦口利于病,忠言逆耳利于行。
91.飞鸟尽,良弓藏;狡兔死,走狗烹。
92.耳闻之不如目见之,目见之不如足践之。(刘向《说苑》)
93.与善人居,如入芝兰之室,久而不闻其香;与恶人居,如入鲍鱼之肆,久而不闻其臭
。(刘向《说苑》)
94.水至清则无鱼,人至察则无徒(东方朔《答客难》)
95.塞翁失马,焉知非福?(《淮南子》)
96.正其义不谋其利,明其道不计其功。(班固《汉书》)
97.临渊羡鱼,不如退而结网。(班固《汉书?董仲舒传》)
98.前车之覆,后车之鉴。(班固《汉书》)
99.文章,经国之大业,不朽之盛事。(曹丕《典论。论文》)
100.山不厌高,海不厌深。周公吐哺,天下归心。(曹操《短歌行》)
101.老骥伏枥,志在千里;烈士暮年,壮心不已。(曹操《龟虽寿》)
102.捐躯赴国难,视死忽如归。(曹植《白马篇》)
103.静以修身,俭以养德。非淡泊无以明志,非宁静无以致远。夫学须静也,才须学也
。非学无以广才,非志无以成学。(诸葛亮《诫子书》)
104.鞠躬尽瘁,死而后已。(诸葛亮《后出师表》)
105.勿以恶小而为之,勿以善小而不为。(陈寿《三国志》)
106.士别三日,即更刮目相待。(陈寿《三国志》)
107.读书百遍,其义自见。(陈寿《三国志》)
108.国以民为本,民以食为天。(陈寿《三国志》)
109.一年之计在于春,一日之计在于晨。(萧绎《纂要》)
110.暮春三月,江南草长,杂花生树,群莺乱飞。(丘迟《与陈伯之书》)
111.精骛八极,心游万仞。(陆机《文赋》)
112.失之东隅,收之桑榆。(范晔《后汉书》)
113.精诚所至,金石为开。(范晔《后汉书》)
114.不入虎穴,焉得虎子?(范晔《后汉书》)
115.阳春之曲,和者必寡;盛名之下,其实难副。(范晔《后汉书》)
116.百川东到海,何时复西归?少壮不努力,老大徒伤悲。(汉乐府《长歌行》)
117.采菊东篱下,悠然见南山。(陶渊明《饮酒》)
118.奇文共欣赏,疑义相与析。(陶渊明《移居》)
119.羁鸟恋旧林,池鱼思故渊。(陶渊明《归园田居》)
120.操千曲而后晓声,观千剑而后识器。(刘勰《文心雕龙》)
121.登山则情满于山,观海则意溢于海。(刘勰《文心雕龙》)
122.大丈夫宁可玉碎,不能瓦全。(《北齐书》)
123.蝉噪林逾静,鸟鸣山更幽。(王籍《入若耶溪》)
唐代
124.云销雨霁,彩彻区明。落霞与孤鹜齐飞,秋水共长天一色。(王勃《滕王阁序》)
125.老当益壮,宁移白首之心;穷且益坚,不坠青云之志。(王勃《滕王阁序》)
126.求木之长者,必固其根本;欲流之远者,必浚其泉源;思国之安者,必积其德义。(
魏徵《谏太宗十思疏》)
127.前不见古人,后不见来者。念天地之悠悠,独怆然而涕下。(陈子昂《登幽州台歌
》)
128.春潮带雨晚来急,野渡无人舟自横。(韦应物《滁州西涧》)
129.海上生明月,天涯共此时。(张九龄《望月怀远》)
130.不知细叶谁裁出,二月春风似剪刀。(贺知章《咏柳》)
131.莫愁前路无知己,天下谁人不识君。(高适《别董大》)
132.疾风知劲草,板荡识诚臣。(李世民《赠萧瑀》)
133.空山新雨后,天气晚来秋。明月松间照,清泉石上流。竹喧归浣女,莲动下渔舟。
随意春芳歇,王孙自可留。(王维《山居秋暝》)
134.独在异乡为异客,每逢佳节倍思亲。遥知兄弟登高处,遍插茱萸少一人。(王维《
九月九日忆山东兄弟》)
135.渭城朝雨浥轻尘,客舍青青柳色新。劝君更尽一杯酒,西出阳关无故人。(王维《
送元二使安西》)
136.白日依山尽,黄河入海流。欲穷千里目,更上一层楼。(王之涣《登鹳鹊楼》)
137.洛阳亲友如相问,一片冰心在玉壶。(王昌龄《芙蓉楼送辛渐》)
138.黄沙百战穿金甲,不破楼兰终不还。(王昌龄《从军行》)
139.忽如一夜春风来,千树万树梨花开。(岑参《白雪歌送武判官归京》)
140.山光悦鸟性,潭影空人心。(常建《题破山寺后禅院》)
141.孤帆远影碧空尽,惟见长江天际流。(李白《送孟浩然之广陵》)
142.清水出芙蓉,天然去雕饰。(李白《诗论》)
143.天生我材必有用,千金散尽还复来。(李白《将进酒》)
144.安能摧眉折腰事权贵,使我不得开心颜!(李白《梦游天姥吟留别》)
145.抽刀断水水更流,举杯销愁愁更愁。(李白《宣州谢朓楼饯别校书叔云》)
146.随风潜入夜,润物细无声。(杜甫《春夜喜雨》)
147.正是江南好风景,落花时节又逢君。(杜甫《江南逢李龟年》)
148.读书破万卷,下笔如有神。(杜甫《奉赠韦左丞丈二十二韵》)
149.为人性僻耽佳句,语不惊人死不休。(杜甫《江上值水如海势聊短述》)
150.朱门酒肉臭,路有冻死骨。(杜甫《自京赴奉先县咏怀五百字》)
151.国破山河在,城春草木深。感时花溅泪,恨别鸟惊心。烽火连三月,家书抵万金。
(杜甫《春望》)
152.露从今夜白,月是故乡明。(杜甫《月夜忆舍弟》)
153.笔落惊风雨,诗成泣鬼神。(杜甫《寄李白。二十韵》)
154.文章千古事,得失寸心知。(杜甫《偶题》)
155.三顾频烦天下计,两朝开济老臣心。出师未捷身先死,长使英雄泪满襟。(杜甫《
蜀相》)
156.尔曹身与名俱灭,不废江河万古流。(杜甫《戏为六绝句》)
157.星垂平野阔,月涌大江流。(杜甫《旅夜书怀》
158.昔闻洞庭水,今上岳阳楼。吴楚东南坼,乾坤日夜浮。亲朋无一字,老病有孤舟。
戎马关山北,凭轩涕泗流。(杜甫《登岳阳楼》)
159.谁言寸草心,报得三春晖。(孟郊《游子吟》)
160.晴川历历汉阳树,芳草萋萋鹦鹉洲。日暮乡关何处是?烟波江上使人愁。(崔颢《黄
鹤楼》)
161.潮平两岸阔,风正一帆悬。(王湾《次北固山下》)
162.蚍蜉撼大树,可笑不自量。(韩愈《调张籍》)
163.业精于勤荒于嬉,行成于思毁于随。(韩愈《进学解》)
164.天街小雨润如酥,草色遥看近却无。(韩愈《早春呈水部张十八员外》)
165.曾经沧海难为水,除却巫山不是云。(元稹《离思》)
166.衰兰送客咸阳道,天若有情天亦老。(李贺《金铜仙人辞汉歌》)
167.黑云压城城欲摧,甲光向日金鳞开。(李贺《雁门太守行》)
168.沉舟侧畔千帆过,病树前头万木春。(刘禹锡《酬乐天扬州初逢席上见赠》)
169.东边日出西边雨,道是无晴却有晴。(刘禹锡《竹枝词》)
170.朱雀桥边野草花,乌衣巷口夕阳斜。旧时王谢堂前燕,飞入寻常百姓家。(刘禹锡
《乌衣巷》)
171.千淘万漉虽辛苦,吹尽狂沙始到金。(刘禹锡《浪淘沙》)
172.自古逢秋悲寂寥,我言秋日胜春朝。晴空一鹤排云上,便引诗情到碧霄。(刘禹锡
《秋词》)
173.文章合为时而著,歌诗合为事而作。(白居易《与元九书》)
174.野火烧不尽,春风吹又生。(白居易《赋得古原草送别》)
175.试玉要烧三日满,辨材须待七年期。(白居易《放言》)
176.日出江花红胜火,春来江水绿如蓝。(白居易《忆江南》)
177.远上寒山石径斜,白云生处有人家。停车坐爱枫林晚,霜叶红于二月花。(杜牧《
山行》).
178身无彩凤双飞翼,心有灵犀一点通。(李商隐《无题》)
179.历览前贤国也家,成由勤俭败由奢。(李商隐《咏史》)
180.天意怜幽草,人间重晚晴。(李商隐《晚晴》)
181.君问归期未有期,巴山夜雨涨秋池。何当共剪西窗烛,却话巴山夜雨时。(李商隐
《夜雨寄北》)
182.月落乌啼霜满天,江枫渔火对愁眠。姑苏城外寒山寺,夜半钟声到客船。(张继《
枫桥夜泊》)
183.溪云初起日沉阁,山雨欲来风满楼。(许浑《咸阳城东楼晚眺》)
w*g
3 楼
但是也有不少pay得很好的工作是写算法。我主要的工作就是用C++写一些螺丝钉一样的
程序。每个最多也就几千行,一年也写不了一两个。但是性能需要达到极致。你要用
java,有那启动程序的时间我结果都跑出来了。一个比较好的比喻是C++就是做剑法的
,java是做剑阵的。20年前用C++做剑阵的那叫没办法,但现在还用C++做剑阵除了解决
历史遗留问题以外只能是脑子有问题了。如果是做速度的,别说C++,关键时候汇编也
得上。只是很多东西都隐藏在接口后面,大部分做java的看不到而已。
程序。每个最多也就几千行,一年也写不了一两个。但是性能需要达到极致。你要用
java,有那启动程序的时间我结果都跑出来了。一个比较好的比喻是C++就是做剑法的
,java是做剑阵的。20年前用C++做剑阵的那叫没办法,但现在还用C++做剑阵除了解决
历史遗留问题以外只能是脑子有问题了。如果是做速度的,别说C++,关键时候汇编也
得上。只是很多东西都隐藏在接口后面,大部分做java的看不到而已。
P*i
4 楼
还好,木莫成舟
x*u
5 楼
P*i
6 楼
谢谢支持我的童鞋们啦,我心早不在这里。尽管对心版有感情,它依旧或更替还是都由
它去吧。
它去吧。
c*o
10 楼
bless lz
c*3
11 楼
还是个习惯问题。C简洁明了,为大多数人喜欢。
不仅开源项目用C的最多,各种操作系统算是大项目,用C一样可以做的很成功。
C++主要是大公司喜欢,还有喜欢面向对象的人在用。
不仅开源项目用C的最多,各种操作系统算是大项目,用C一样可以做的很成功。
C++主要是大公司喜欢,还有喜欢面向对象的人在用。
g*g
13 楼
你这个虽然整体说得不错,但也太夸张了。不重复跑的东西,那需要极致性能。重复跑
的东西,启动时间基本可以忽略不计。大部分 benchmark C 也不过比 Java快一倍而已
。也就是说同样的算法,明年的机器 Java可以跟 今年的机器跑 C一样快。
算法的时间要求是有限的,机器变快暂时还是继续的,这才是 C++没落的重要原因。
【在 w***g 的大作中提到】
: 但是也有不少pay得很好的工作是写算法。我主要的工作就是用C++写一些螺丝钉一样的
: 程序。每个最多也就几千行,一年也写不了一两个。但是性能需要达到极致。你要用
: java,有那启动程序的时间我结果都跑出来了。一个比较好的比喻是C++就是做剑法的
: ,java是做剑阵的。20年前用C++做剑阵的那叫没办法,但现在还用C++做剑阵除了解决
: 历史遗留问题以外只能是脑子有问题了。如果是做速度的,别说C++,关键时候汇编也
: 得上。只是很多东西都隐藏在接口后面,大部分做java的看不到而已。
的东西,启动时间基本可以忽略不计。大部分 benchmark C 也不过比 Java快一倍而已
。也就是说同样的算法,明年的机器 Java可以跟 今年的机器跑 C一样快。
算法的时间要求是有限的,机器变快暂时还是继续的,这才是 C++没落的重要原因。
【在 w***g 的大作中提到】
: 但是也有不少pay得很好的工作是写算法。我主要的工作就是用C++写一些螺丝钉一样的
: 程序。每个最多也就几千行,一年也写不了一两个。但是性能需要达到极致。你要用
: java,有那启动程序的时间我结果都跑出来了。一个比较好的比喻是C++就是做剑法的
: ,java是做剑阵的。20年前用C++做剑阵的那叫没办法,但现在还用C++做剑阵除了解决
: 历史遗留问题以外只能是脑子有问题了。如果是做速度的,别说C++,关键时候汇编也
: 得上。只是很多东西都隐藏在接口后面,大部分做java的看不到而已。
g*g
15 楼
绝大多数开发追求的是性能足够好的最快途径。而不是性能最好。所以才会从汇编到 C
. 同样的原因 Java在 web不敌各种脚步语言。
. 同样的原因 Java在 web不敌各种脚步语言。
l*s
18 楼
there is a caveat though. Although the speed limit of java is only several
folds lower than c/c++, to achieve the potential, it is much much harder in
java than
in c/c++.
【在 g*****g 的大作中提到】
: 你这个虽然整体说得不错,但也太夸张了。不重复跑的东西,那需要极致性能。重复跑
: 的东西,启动时间基本可以忽略不计。大部分 benchmark C 也不过比 Java快一倍而已
: 。也就是说同样的算法,明年的机器 Java可以跟 今年的机器跑 C一样快。
: 算法的时间要求是有限的,机器变快暂时还是继续的,这才是 C++没落的重要原因。
folds lower than c/c++, to achieve the potential, it is much much harder in
java than
in c/c++.
【在 g*****g 的大作中提到】
: 你这个虽然整体说得不错,但也太夸张了。不重复跑的东西,那需要极致性能。重复跑
: 的东西,启动时间基本可以忽略不计。大部分 benchmark C 也不过比 Java快一倍而已
: 。也就是说同样的算法,明年的机器 Java可以跟 今年的机器跑 C一样快。
: 算法的时间要求是有限的,机器变快暂时还是继续的,这才是 C++没落的重要原因。
z*e
19 楼
这个很容易看
小东西在乎启动时间
越小越在乎
你要是用微波炉上网,那内存得斤斤计较
因为就那点内存
但是如果你随便找个server做点服务
那你跑去算那点启动时间,那就是脑子进水了
必要时候预热一下有啥大不了的
spring启动就不快,google做了一个guice出来
说启动快很多,结果没啥人用
【在 w***g 的大作中提到】
: 但是也有不少pay得很好的工作是写算法。我主要的工作就是用C++写一些螺丝钉一样的
: 程序。每个最多也就几千行,一年也写不了一两个。但是性能需要达到极致。你要用
: java,有那启动程序的时间我结果都跑出来了。一个比较好的比喻是C++就是做剑法的
: ,java是做剑阵的。20年前用C++做剑阵的那叫没办法,但现在还用C++做剑阵除了解决
: 历史遗留问题以外只能是脑子有问题了。如果是做速度的,别说C++,关键时候汇编也
: 得上。只是很多东西都隐藏在接口后面,大部分做java的看不到而已。
小东西在乎启动时间
越小越在乎
你要是用微波炉上网,那内存得斤斤计较
因为就那点内存
但是如果你随便找个server做点服务
那你跑去算那点启动时间,那就是脑子进水了
必要时候预热一下有啥大不了的
spring启动就不快,google做了一个guice出来
说启动快很多,结果没啥人用
【在 w***g 的大作中提到】
: 但是也有不少pay得很好的工作是写算法。我主要的工作就是用C++写一些螺丝钉一样的
: 程序。每个最多也就几千行,一年也写不了一两个。但是性能需要达到极致。你要用
: java,有那启动程序的时间我结果都跑出来了。一个比较好的比喻是C++就是做剑法的
: ,java是做剑阵的。20年前用C++做剑阵的那叫没办法,但现在还用C++做剑阵除了解决
: 历史遗留问题以外只能是脑子有问题了。如果是做速度的,别说C++,关键时候汇编也
: 得上。只是很多东西都隐藏在接口后面,大部分做java的看不到而已。
l*s
21 楼
the difference between assembly and c++ is much narrow than c++ and java.
The former is 10~20%, but latter is on the order of magnitude. 2~3 folds
slowness is just an ideal/academic setting, we are lazy, especially java
coders. The bottom is you cannot count on java's speed unless it is really
trivial work.
【在 z****e 的大作中提到】
: 搞得c++里面得对象不会慢一样
: 干脆指令编程算了,写汇编比较好
: 还记得清华那个笑话吗?
: 我今天开始磨,明天磨一个cpu出来
:
: in
The former is 10~20%, but latter is on the order of magnitude. 2~3 folds
slowness is just an ideal/academic setting, we are lazy, especially java
coders. The bottom is you cannot count on java's speed unless it is really
trivial work.
【在 z****e 的大作中提到】
: 搞得c++里面得对象不会慢一样
: 干脆指令编程算了,写汇编比较好
: 还记得清华那个笑话吗?
: 我今天开始磨,明天磨一个cpu出来
:
: in
z*e
22 楼
marginal benefits递减
我没觉得我需要那么快的东西
我现在用java写个游戏都不会有lag
挺好,游戏顺畅是我需要速度的上限
再快对我来说意义实在是很小
我也不认为需要比游戏刷新频率更快的东西有多大的市场
【在 l*********s 的大作中提到】
: the difference between assembly and c++ is much narrow than c++ and java.
: The former is 10~20%, but latter is on the order of magnitude. 2~3 folds
: slowness is just an ideal/academic setting, we are lazy, especially java
: coders. The bottom is you cannot count on java's speed unless it is really
: trivial work.
我没觉得我需要那么快的东西
我现在用java写个游戏都不会有lag
挺好,游戏顺畅是我需要速度的上限
再快对我来说意义实在是很小
我也不认为需要比游戏刷新频率更快的东西有多大的市场
【在 l*********s 的大作中提到】
: the difference between assembly and c++ is much narrow than c++ and java.
: The former is 10~20%, but latter is on the order of magnitude. 2~3 folds
: slowness is just an ideal/academic setting, we are lazy, especially java
: coders. The bottom is you cannot count on java's speed unless it is really
: trivial work.
g*e
25 楼
你们肯定没做过一跑就是半天的项目。要是能给客户减少20% runtime 花一倍精力也要做
虽然硬件性能是在提升,但这个语言上的性能是on top of it,并且客户一直有这个
demand。没有最好只有更好。
做做biz logic么啥语言都不是问题
虽然硬件性能是在提升,但这个语言上的性能是on top of it,并且客户一直有这个
demand。没有最好只有更好。
做做biz logic么啥语言都不是问题
z*e
26 楼
这种东西,要把计算负载给分流掉
现在主要是科学计算比较耗时间
一般的应用,都有办法分流
比较难搞的是3d图像,其它都还好
2d只要找个ui线程负责欺骗眼睛就好了
别打断这个线程,剩下都好办
理论上没有最好只有更好
但是对于服务业来说,人的感官有一个极限
比如2d游戏,90帧其实足够了,你把图像刷新做到900帧
吊不吊?很吊
但是问题是,人感觉不出来差异,市场价值就没有多少了
纯粹民用的东西,很多时候是直接以人的感官为主要参考
要做
【在 g*********e 的大作中提到】
: 你们肯定没做过一跑就是半天的项目。要是能给客户减少20% runtime 花一倍精力也要做
: 虽然硬件性能是在提升,但这个语言上的性能是on top of it,并且客户一直有这个
: demand。没有最好只有更好。
: 做做biz logic么啥语言都不是问题
现在主要是科学计算比较耗时间
一般的应用,都有办法分流
比较难搞的是3d图像,其它都还好
2d只要找个ui线程负责欺骗眼睛就好了
别打断这个线程,剩下都好办
理论上没有最好只有更好
但是对于服务业来说,人的感官有一个极限
比如2d游戏,90帧其实足够了,你把图像刷新做到900帧
吊不吊?很吊
但是问题是,人感觉不出来差异,市场价值就没有多少了
纯粹民用的东西,很多时候是直接以人的感官为主要参考
要做
【在 g*********e 的大作中提到】
: 你们肯定没做过一跑就是半天的项目。要是能给客户减少20% runtime 花一倍精力也要做
: 虽然硬件性能是在提升,但这个语言上的性能是on top of it,并且客户一直有这个
: demand。没有最好只有更好。
: 做做biz logic么啥语言都不是问题
z*e
28 楼
赚钱跟搞科研是两回事
赚钱的话一定要贴近客户需求
客户要什么,你就做什么,当然这个客户包括你自己
我的哲学就是,我喜欢玩的东西,我相信别人也喜欢
所以我做我喜欢的东西,以满足我自身需要为主要目标
然后再推而广之
这就是那个啥mitbbsmj说的
纯技术创业,其实风险最大
满足客户需求为主要目标的创业,其实最容易赚钱
这就是为什么我认为超过人感官极限的东西
其市场价值相对小的原因
当然这只是民用市场,你要搞什么军工那些,那是另外一回事
一般人也接触不到军工这些
要做
【在 g*********e 的大作中提到】
: 你们肯定没做过一跑就是半天的项目。要是能给客户减少20% runtime 花一倍精力也要做
: 虽然硬件性能是在提升,但这个语言上的性能是on top of it,并且客户一直有这个
: demand。没有最好只有更好。
: 做做biz logic么啥语言都不是问题
赚钱的话一定要贴近客户需求
客户要什么,你就做什么,当然这个客户包括你自己
我的哲学就是,我喜欢玩的东西,我相信别人也喜欢
所以我做我喜欢的东西,以满足我自身需要为主要目标
然后再推而广之
这就是那个啥mitbbsmj说的
纯技术创业,其实风险最大
满足客户需求为主要目标的创业,其实最容易赚钱
这就是为什么我认为超过人感官极限的东西
其市场价值相对小的原因
当然这只是民用市场,你要搞什么军工那些,那是另外一回事
一般人也接触不到军工这些
要做
【在 g*********e 的大作中提到】
: 你们肯定没做过一跑就是半天的项目。要是能给客户减少20% runtime 花一倍精力也要做
: 虽然硬件性能是在提升,但这个语言上的性能是on top of it,并且客户一直有这个
: demand。没有最好只有更好。
: 做做biz logic么啥语言都不是问题
g*g
29 楼
On the contrary, it's much harder to achieve the potential on C++ side.
JIT does a lot of optimization not achievable by average C++ programmers.
in
【在 l*********s 的大作中提到】
: there is a caveat though. Although the speed limit of java is only several
: folds lower than c/c++, to achieve the potential, it is much much harder in
: java than
: in c/c++.
JIT does a lot of optimization not achievable by average C++ programmers.
in
【在 l*********s 的大作中提到】
: there is a caveat though. Although the speed limit of java is only several
: folds lower than c/c++, to achieve the potential, it is much much harder in
: java than
: in c/c++.
c*3
33 楼
写程序是为了解决实际问题。语言特性,这个你做得到,它做不到,对解决实际问题没
有意义。
C++的好处是封装,面向对象设计。但是缺点是可以用的适合C++的库太少。基本操作系
统底层的库都是C的接口,C++用还得封装,工作量也不少。不封装直接用,和直接用C
写程序也差不多了。
举个例子,SSH是常用功能,C++封装SSH的库很难找到。加密库最常用的openssl也是用
C写的,要用还得自己封装。或者找个C++的库Crypto++,因为用的人少,SSL的兼容性
也不让人放心。
所以很多情况还是用C写程序最方便,因为适合C的库到处都有。
【在 w***g 的大作中提到】
: C++用模板类处理一般情况,然后specialize特殊可以优化的特例,这个C无论如何也做
: 不到吧。
有意义。
C++的好处是封装,面向对象设计。但是缺点是可以用的适合C++的库太少。基本操作系
统底层的库都是C的接口,C++用还得封装,工作量也不少。不封装直接用,和直接用C
写程序也差不多了。
举个例子,SSH是常用功能,C++封装SSH的库很难找到。加密库最常用的openssl也是用
C写的,要用还得自己封装。或者找个C++的库Crypto++,因为用的人少,SSL的兼容性
也不让人放心。
所以很多情况还是用C写程序最方便,因为适合C的库到处都有。
【在 w***g 的大作中提到】
: C++用模板类处理一般情况,然后specialize特殊可以优化的特例,这个C无论如何也做
: 不到吧。
b*s
34 楼
所有c库c++都能用
C
【在 c****3 的大作中提到】
: 写程序是为了解决实际问题。语言特性,这个你做得到,它做不到,对解决实际问题没
: 有意义。
: C++的好处是封装,面向对象设计。但是缺点是可以用的适合C++的库太少。基本操作系
: 统底层的库都是C的接口,C++用还得封装,工作量也不少。不封装直接用,和直接用C
: 写程序也差不多了。
: 举个例子,SSH是常用功能,C++封装SSH的库很难找到。加密库最常用的openssl也是用
: C写的,要用还得自己封装。或者找个C++的库Crypto++,因为用的人少,SSL的兼容性
: 也不让人放心。
: 所以很多情况还是用C写程序最方便,因为适合C的库到处都有。
C
【在 c****3 的大作中提到】
: 写程序是为了解决实际问题。语言特性,这个你做得到,它做不到,对解决实际问题没
: 有意义。
: C++的好处是封装,面向对象设计。但是缺点是可以用的适合C++的库太少。基本操作系
: 统底层的库都是C的接口,C++用还得封装,工作量也不少。不封装直接用,和直接用C
: 写程序也差不多了。
: 举个例子,SSH是常用功能,C++封装SSH的库很难找到。加密库最常用的openssl也是用
: C写的,要用还得自己封装。或者找个C++的库Crypto++,因为用的人少,SSL的兼容性
: 也不让人放心。
: 所以很多情况还是用C写程序最方便,因为适合C的库到处都有。
T*i
35 楼
看你写啥了。除非你要做开源大项目。引出的接口简单,very well defined。这种当
然是用C。
终端应用。甚至像我这种特殊的应用库,当然选C++。项目组织管理都简单。而且代码
量显著减少。不用C++才有问题。
C
【在 c****3 的大作中提到】
: 写程序是为了解决实际问题。语言特性,这个你做得到,它做不到,对解决实际问题没
: 有意义。
: C++的好处是封装,面向对象设计。但是缺点是可以用的适合C++的库太少。基本操作系
: 统底层的库都是C的接口,C++用还得封装,工作量也不少。不封装直接用,和直接用C
: 写程序也差不多了。
: 举个例子,SSH是常用功能,C++封装SSH的库很难找到。加密库最常用的openssl也是用
: C写的,要用还得自己封装。或者找个C++的库Crypto++,因为用的人少,SSL的兼容性
: 也不让人放心。
: 所以很多情况还是用C写程序最方便,因为适合C的库到处都有。
然是用C。
终端应用。甚至像我这种特殊的应用库,当然选C++。项目组织管理都简单。而且代码
量显著减少。不用C++才有问题。
C
【在 c****3 的大作中提到】
: 写程序是为了解决实际问题。语言特性,这个你做得到,它做不到,对解决实际问题没
: 有意义。
: C++的好处是封装,面向对象设计。但是缺点是可以用的适合C++的库太少。基本操作系
: 统底层的库都是C的接口,C++用还得封装,工作量也不少。不封装直接用,和直接用C
: 写程序也差不多了。
: 举个例子,SSH是常用功能,C++封装SSH的库很难找到。加密库最常用的openssl也是用
: C写的,要用还得自己封装。或者找个C++的库Crypto++,因为用的人少,SSL的兼容性
: 也不让人放心。
: 所以很多情况还是用C写程序最方便,因为适合C的库到处都有。
n*l
38 楼
like linus said, you do not need a whole new language to solve those issues.
they can be implemented relatively cleanly in c.
if you want to solve the biggest issues in c, you need to invent
java/c# kind of run time.
not
【在 l*********s 的大作中提到】
: type safety, encapsulation, these benefits don't cost performance so why not
: using c++?
they can be implemented relatively cleanly in c.
if you want to solve the biggest issues in c, you need to invent
java/c# kind of run time.
not
【在 l*********s 的大作中提到】
: type safety, encapsulation, these benefits don't cost performance so why not
: using c++?
z*e
93 楼
有些东西看看市场不就知道了
瞎子摸象还很起劲
瞎子摸象还很起劲
z*e
95 楼
location
阿三对cpp的兴趣已经超过天朝了
阿三对cpp的兴趣已经超过天朝了
l*s
101 楼
http://programmers.stackexchange.com/questions/29344/jit-compil
【在 g*****g 的大作中提到】
: On the contrary, it's much harder to achieve the potential on C++ side.
: JIT does a lot of optimization not achievable by average C++ programmers.
:
: in
【在 g*****g 的大作中提到】
: On the contrary, it's much harder to achieve the potential on C++ side.
: JIT does a lot of optimization not achievable by average C++ programmers.
:
: in
g*g
103 楼
Why don't you look at this paper? And you see without deep optimization,
Java beats C++ easily. 134 sec vs. 197 in Java's favor.
https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf
"We find that in regards to performance, C++ wins out by a large
margin. However, it also required the most extensive tuning efforts, many of
which were done at a level of sophistication that would not be available to
the average programmer."
【在 l*********s 的大作中提到】
: http://programmers.stackexchange.com/questions/29344/jit-compil
Java beats C++ easily. 134 sec vs. 197 in Java's favor.
https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf
"We find that in regards to performance, C++ wins out by a large
margin. However, it also required the most extensive tuning efforts, many of
which were done at a level of sophistication that would not be available to
the average programmer."
【在 l*********s 的大作中提到】
: http://programmers.stackexchange.com/questions/29344/jit-compil
c*e
104 楼
php,java,c#的framework太多了,一个项目,骨架马上就搭好了。现在的framework,不
管是php,java,c#,都是mvc架构,一个project里面能同时把web application和web
api都写成了。然后你不管是用手机来连上这个api,还是其它,反正就很容易了。
framework帮着搞了security方面,真是太容易了。
程序员,说白了就是干copy,paste的活。
【在 w***g 的大作中提到】
: 但是也有不少pay得很好的工作是写算法。我主要的工作就是用C++写一些螺丝钉一样的
: 程序。每个最多也就几千行,一年也写不了一两个。但是性能需要达到极致。你要用
: java,有那启动程序的时间我结果都跑出来了。一个比较好的比喻是C++就是做剑法的
: ,java是做剑阵的。20年前用C++做剑阵的那叫没办法,但现在还用C++做剑阵除了解决
: 历史遗留问题以外只能是脑子有问题了。如果是做速度的,别说C++,关键时候汇编也
: 得上。只是很多东西都隐藏在接口后面,大部分做java的看不到而已。
管是php,java,c#,都是mvc架构,一个project里面能同时把web application和web
api都写成了。然后你不管是用手机来连上这个api,还是其它,反正就很容易了。
framework帮着搞了security方面,真是太容易了。
程序员,说白了就是干copy,paste的活。
【在 w***g 的大作中提到】
: 但是也有不少pay得很好的工作是写算法。我主要的工作就是用C++写一些螺丝钉一样的
: 程序。每个最多也就几千行,一年也写不了一两个。但是性能需要达到极致。你要用
: java,有那启动程序的时间我结果都跑出来了。一个比较好的比喻是C++就是做剑法的
: ,java是做剑阵的。20年前用C++做剑阵的那叫没办法,但现在还用C++做剑阵除了解决
: 历史遗留问题以外只能是脑子有问题了。如果是做速度的,别说C++,关键时候汇编也
: 得上。只是很多东西都隐藏在接口后面,大部分做java的看不到而已。
z*e
105 楼
妹子,去这里点评一下
http://www.mitbbs.com/article_t/Military/41148263.html
【在 c*********e 的大作中提到】
: php,java,c#的framework太多了,一个项目,骨架马上就搭好了。现在的framework,不
: 管是php,java,c#,都是mvc架构,一个project里面能同时把web application和web
: api都写成了。然后你不管是用手机来连上这个api,还是其它,反正就很容易了。
: framework帮着搞了security方面,真是太容易了。
: 程序员,说白了就是干copy,paste的活。
http://www.mitbbs.com/article_t/Military/41148263.html
【在 c*********e 的大作中提到】
: php,java,c#的framework太多了,一个项目,骨架马上就搭好了。现在的framework,不
: 管是php,java,c#,都是mvc架构,一个project里面能同时把web application和web
: api都写成了。然后你不管是用手机来连上这个api,还是其它,反正就很容易了。
: framework帮着搞了security方面,真是太容易了。
: 程序员,说白了就是干copy,paste的活。
l*s
106 楼
yes you can, but in a very ugly way and no appreciable gains in performance.
so why bother?
issues.
【在 n****l 的大作中提到】
: like linus said, you do not need a whole new language to solve those issues.
: they can be implemented relatively cleanly in c.
: if you want to solve the biggest issues in c, you need to invent
: java/c# kind of run time.
:
: not
so why bother?
issues.
【在 n****l 的大作中提到】
: like linus said, you do not need a whole new language to solve those issues.
: they can be implemented relatively cleanly in c.
: if you want to solve the biggest issues in c, you need to invent
: java/c# kind of run time.
:
: not
l*s
107 楼
You are talking about theory, the post I referenced is talking about reality.
I am sorry that I am much more interested in reality than in theory. : -)
by the way, it is not bashing against java, since I am very
interested in learning java (for increasing my marketability).
===================================================================
"From a theoretical viewpoint, there's honestly not as much real controversy
as it might look like. What's actually happened is pretty simple: Java
advocates (it seems to be mostly Java advocates, anyway) spent years trying
to come up with benchmarks that would show Java beating C and/or C++. In a
few cases, they doctored benchmarks in pretty obvious ways to get the
results they wanted, but they had to manipulate the benchmarks in pretty
obvious ways to accomplish that. Since they couldn't get the results they
wanted from real code, they started to follow an alternate route: writing
about the possibility that a JIT could give performance benefits under at
least some circumstances.
In doing this, however, they generally ignored one crucial point: the
majority of optimization is independent of the target processor --
especially the most important (and, unfortunately, the most expensive)
optimizations. This means JIT compilers have relatively little benefit
compared to up-front compilers (even in theory), and they have a fairly high
cost compared to up-front compilers, because the user has to wait while any
expensive optimization happens. Because of that, most JIT compilers are
pretty much forced to skip doing the most expensive optimizations, because
in nearly every case they cost more than they (even hope to) gain. In the
case of an up-front compiler, you can amortize the cost of that expensive
optimization across many executions, but with a JIT compiler you have to
repeat it at (essentially) every execution instead. As a result
optimizations that are entirely practical for an up-front compiler become
completely useless for a JIT compiler."
of
to
【在 g*****g 的大作中提到】
: Why don't you look at this paper? And you see without deep optimization,
: Java beats C++ easily. 134 sec vs. 197 in Java's favor.
: https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf
: "We find that in regards to performance, C++ wins out by a large
: margin. However, it also required the most extensive tuning efforts, many of
: which were done at a level of sophistication that would not be available to
: the average programmer."
I am sorry that I am much more interested in reality than in theory. : -)
by the way, it is not bashing against java, since I am very
interested in learning java (for increasing my marketability).
===================================================================
"From a theoretical viewpoint, there's honestly not as much real controversy
as it might look like. What's actually happened is pretty simple: Java
advocates (it seems to be mostly Java advocates, anyway) spent years trying
to come up with benchmarks that would show Java beating C and/or C++. In a
few cases, they doctored benchmarks in pretty obvious ways to get the
results they wanted, but they had to manipulate the benchmarks in pretty
obvious ways to accomplish that. Since they couldn't get the results they
wanted from real code, they started to follow an alternate route: writing
about the possibility that a JIT could give performance benefits under at
least some circumstances.
In doing this, however, they generally ignored one crucial point: the
majority of optimization is independent of the target processor --
especially the most important (and, unfortunately, the most expensive)
optimizations. This means JIT compilers have relatively little benefit
compared to up-front compilers (even in theory), and they have a fairly high
cost compared to up-front compilers, because the user has to wait while any
expensive optimization happens. Because of that, most JIT compilers are
pretty much forced to skip doing the most expensive optimizations, because
in nearly every case they cost more than they (even hope to) gain. In the
case of an up-front compiler, you can amortize the cost of that expensive
optimization across many executions, but with a JIT compiler you have to
repeat it at (essentially) every execution instead. As a result
optimizations that are entirely practical for an up-front compiler become
completely useless for a JIT compiler."
of
to
【在 g*****g 的大作中提到】
: Why don't you look at this paper? And you see without deep optimization,
: Java beats C++ easily. 134 sec vs. 197 in Java's favor.
: https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf
: "We find that in regards to performance, C++ wins out by a large
: margin. However, it also required the most extensive tuning efforts, many of
: which were done at a level of sophistication that would not be available to
: the average programmer."
c*e
108 楼
在你眼里,人类都是女人。
【在 z****e 的大作中提到】
: 妹子,去这里点评一下
: http://www.mitbbs.com/article_t/Military/41148263.html
【在 z****e 的大作中提到】
: 妹子,去这里点评一下
: http://www.mitbbs.com/article_t/Military/41148263.html
c*e
109 楼
记得你好像在日本还是袋鼠国吧?
【在 z****e 的大作中提到】
: 妹子,去这里点评一下
: http://www.mitbbs.com/article_t/Military/41148263.html
【在 z****e 的大作中提到】
: 妹子,去这里点评一下
: http://www.mitbbs.com/article_t/Military/41148263.html
g*g
110 楼
No, your reference is talking about theory, no performance benchmark to back
it up. The benchmark I showed from Google wasn't a pro-java paper, in fact
the developers know C++ better than Java.
The more complicated your system is, the less likely you can achieve any
meaningful optimization over Java by code tuning. A simple benchmark like
this is favoring C++, not the other way around.
reality.
controversy
trying
【在 l*********s 的大作中提到】
: You are talking about theory, the post I referenced is talking about reality.
: I am sorry that I am much more interested in reality than in theory. : -)
: by the way, it is not bashing against java, since I am very
: interested in learning java (for increasing my marketability).
: ===================================================================
: "From a theoretical viewpoint, there's honestly not as much real controversy
: as it might look like. What's actually happened is pretty simple: Java
: advocates (it seems to be mostly Java advocates, anyway) spent years trying
: to come up with benchmarks that would show Java beating C and/or C++. In a
: few cases, they doctored benchmarks in pretty obvious ways to get the
it up. The benchmark I showed from Google wasn't a pro-java paper, in fact
the developers know C++ better than Java.
The more complicated your system is, the less likely you can achieve any
meaningful optimization over Java by code tuning. A simple benchmark like
this is favoring C++, not the other way around.
reality.
controversy
trying
【在 l*********s 的大作中提到】
: You are talking about theory, the post I referenced is talking about reality.
: I am sorry that I am much more interested in reality than in theory. : -)
: by the way, it is not bashing against java, since I am very
: interested in learning java (for increasing my marketability).
: ===================================================================
: "From a theoretical viewpoint, there's honestly not as much real controversy
: as it might look like. What's actually happened is pretty simple: Java
: advocates (it seems to be mostly Java advocates, anyway) spent years trying
: to come up with benchmarks that would show Java beating C and/or C++. In a
: few cases, they doctored benchmarks in pretty obvious ways to get the
l*s
112 楼
Simple code is easy to tune, not much effort and usually solution is obvious
. That is why benchmark in java benefits more form such effort; which is
seldom realized in real world complicated system .
back
fact
【在 g*****g 的大作中提到】
: No, your reference is talking about theory, no performance benchmark to back
: it up. The benchmark I showed from Google wasn't a pro-java paper, in fact
: the developers know C++ better than Java.
: The more complicated your system is, the less likely you can achieve any
: meaningful optimization over Java by code tuning. A simple benchmark like
: this is favoring C++, not the other way around.
:
: reality.
: controversy
: trying
. That is why benchmark in java benefits more form such effort; which is
seldom realized in real world complicated system .
back
fact
【在 g*****g 的大作中提到】
: No, your reference is talking about theory, no performance benchmark to back
: it up. The benchmark I showed from Google wasn't a pro-java paper, in fact
: the developers know C++ better than Java.
: The more complicated your system is, the less likely you can achieve any
: meaningful optimization over Java by code tuning. A simple benchmark like
: this is favoring C++, not the other way around.
:
: reality.
: controversy
: trying
g*g
114 楼
In real world complicated system, simple tuning is possible. Deep tuning is
impossible.
Without deep tuning, C++ can underperform Java, that's what this paper shows
. This is not a religion debate, it's common sense these days.
People are using C++ over Java for real time requirement, lower footprint
etc. Rarely performance these days.
obvious
【在 l*********s 的大作中提到】
: Simple code is easy to tune, not much effort and usually solution is obvious
: . That is why benchmark in java benefits more form such effort; which is
: seldom realized in real world complicated system .
:
: back
: fact
impossible.
Without deep tuning, C++ can underperform Java, that's what this paper shows
. This is not a religion debate, it's common sense these days.
People are using C++ over Java for real time requirement, lower footprint
etc. Rarely performance these days.
obvious
【在 l*********s 的大作中提到】
: Simple code is easy to tune, not much effort and usually solution is obvious
: . That is why benchmark in java benefits more form such effort; which is
: seldom realized in real world complicated system .
:
: back
: fact
l*s
116 楼
Forget about tuning, c++ is by design to be fast. 3d games are not written
in java, are you suggesting it is because games are simple?
back
fact
【在 g*****g 的大作中提到】
: No, your reference is talking about theory, no performance benchmark to back
: it up. The benchmark I showed from Google wasn't a pro-java paper, in fact
: the developers know C++ better than Java.
: The more complicated your system is, the less likely you can achieve any
: meaningful optimization over Java by code tuning. A simple benchmark like
: this is favoring C++, not the other way around.
:
: reality.
: controversy
: trying
in java, are you suggesting it is because games are simple?
back
fact
【在 g*****g 的大作中提到】
: No, your reference is talking about theory, no performance benchmark to back
: it up. The benchmark I showed from Google wasn't a pro-java paper, in fact
: the developers know C++ better than Java.
: The more complicated your system is, the less likely you can achieve any
: meaningful optimization over Java by code tuning. A simple benchmark like
: this is favoring C++, not the other way around.
:
: reality.
: controversy
: trying
g*g
119 楼
It's because legacy game engines are written in C++ and game companies don't
want to rewrite them.
Library support obviously is a big reason you'd choose one language over
another.
Still, scripting are now used on top of game engines, you can see the trend.
【在 l*********s 的大作中提到】
: Forget about tuning, c++ is by design to be fast. 3d games are not written
: in java, are you suggesting it is because games are simple?
:
:
: back
: fact
want to rewrite them.
Library support obviously is a big reason you'd choose one language over
another.
Still, scripting are now used on top of game engines, you can see the trend.
【在 l*********s 的大作中提到】
: Forget about tuning, c++ is by design to be fast. 3d games are not written
: in java, are you suggesting it is because games are simple?
:
:
: back
: fact
c*3
123 楼
复杂项目,程序不crash,不出memory leak是不可能的。就算用smart pointer,你难
道能不用其他库,不使用其他资源,资源也有释放问题。其他系统或库里资源leak,一
样带来memory leak。
Crash的时候,拿着core dump文件debug最费劲,尤其多线程,内存越界这些情况。最
后不可避免要追进其他开源库里去。用C的开源库,还是相对容易看懂,而且大部分情
况,只要看懂出问题的一小块代码是做什么的就行了,这是C直截了当的好处。用C++的
库,实在太费劲,期望想只看一小块代码就够了,很多情况不可能,太抽象的坏处这时
候就暴露出来了。
最后就是劳民伤财,用C++的大项目,想搞得和C做的项目一样稳定,必须上大量QA,化
大量时间。
所以大项目要稳定,如果对性能要求高,最好还是拿C写代码。看那些开源项目就知道
了,用C做的服务器比用C++的服务器要好,并且数量多,稳定性上很容易有差别。
【在 N********n 的大作中提到】
:
: TEMPLATE一来更乱了。以前用过开源的TEMPLATE库,说是开源的, 出错了调
: 试起来巨费劲,基本跟闭源没区别。吃过几次螃蟹当就知道了,只要不是你
: 自己的代码再怎么开源也是折腾。
道能不用其他库,不使用其他资源,资源也有释放问题。其他系统或库里资源leak,一
样带来memory leak。
Crash的时候,拿着core dump文件debug最费劲,尤其多线程,内存越界这些情况。最
后不可避免要追进其他开源库里去。用C的开源库,还是相对容易看懂,而且大部分情
况,只要看懂出问题的一小块代码是做什么的就行了,这是C直截了当的好处。用C++的
库,实在太费劲,期望想只看一小块代码就够了,很多情况不可能,太抽象的坏处这时
候就暴露出来了。
最后就是劳民伤财,用C++的大项目,想搞得和C做的项目一样稳定,必须上大量QA,化
大量时间。
所以大项目要稳定,如果对性能要求高,最好还是拿C写代码。看那些开源项目就知道
了,用C做的服务器比用C++的服务器要好,并且数量多,稳定性上很容易有差别。
【在 N********n 的大作中提到】
:
: TEMPLATE一来更乱了。以前用过开源的TEMPLATE库,说是开源的, 出错了调
: 试起来巨费劲,基本跟闭源没区别。吃过几次螃蟹当就知道了,只要不是你
: 自己的代码再怎么开源也是折腾。
b*s
125 楼
c++不适合做大项目,早就是定论,没必要反复说了
【在 c****3 的大作中提到】
: 复杂项目,程序不crash,不出memory leak是不可能的。就算用smart pointer,你难
: 道能不用其他库,不使用其他资源,资源也有释放问题。其他系统或库里资源leak,一
: 样带来memory leak。
: Crash的时候,拿着core dump文件debug最费劲,尤其多线程,内存越界这些情况。最
: 后不可避免要追进其他开源库里去。用C的开源库,还是相对容易看懂,而且大部分情
: 况,只要看懂出问题的一小块代码是做什么的就行了,这是C直截了当的好处。用C++的
: 库,实在太费劲,期望想只看一小块代码就够了,很多情况不可能,太抽象的坏处这时
: 候就暴露出来了。
: 最后就是劳民伤财,用C++的大项目,想搞得和C做的项目一样稳定,必须上大量QA,化
: 大量时间。
【在 c****3 的大作中提到】
: 复杂项目,程序不crash,不出memory leak是不可能的。就算用smart pointer,你难
: 道能不用其他库,不使用其他资源,资源也有释放问题。其他系统或库里资源leak,一
: 样带来memory leak。
: Crash的时候,拿着core dump文件debug最费劲,尤其多线程,内存越界这些情况。最
: 后不可避免要追进其他开源库里去。用C的开源库,还是相对容易看懂,而且大部分情
: 况,只要看懂出问题的一小块代码是做什么的就行了,这是C直截了当的好处。用C++的
: 库,实在太费劲,期望想只看一小块代码就够了,很多情况不可能,太抽象的坏处这时
: 候就暴露出来了。
: 最后就是劳民伤财,用C++的大项目,想搞得和C做的项目一样稳定,必须上大量QA,化
: 大量时间。
x*u
126 楼
大项目都有自己的类似JAVA的对象实现,然后用工具全局扫描代码抓违反规定的,一个
罚20美元。
【在 c****3 的大作中提到】
: 复杂项目,程序不crash,不出memory leak是不可能的。就算用smart pointer,你难
: 道能不用其他库,不使用其他资源,资源也有释放问题。其他系统或库里资源leak,一
: 样带来memory leak。
: Crash的时候,拿着core dump文件debug最费劲,尤其多线程,内存越界这些情况。最
: 后不可避免要追进其他开源库里去。用C的开源库,还是相对容易看懂,而且大部分情
: 况,只要看懂出问题的一小块代码是做什么的就行了,这是C直截了当的好处。用C++的
: 库,实在太费劲,期望想只看一小块代码就够了,很多情况不可能,太抽象的坏处这时
: 候就暴露出来了。
: 最后就是劳民伤财,用C++的大项目,想搞得和C做的项目一样稳定,必须上大量QA,化
: 大量时间。
罚20美元。
【在 c****3 的大作中提到】
: 复杂项目,程序不crash,不出memory leak是不可能的。就算用smart pointer,你难
: 道能不用其他库,不使用其他资源,资源也有释放问题。其他系统或库里资源leak,一
: 样带来memory leak。
: Crash的时候,拿着core dump文件debug最费劲,尤其多线程,内存越界这些情况。最
: 后不可避免要追进其他开源库里去。用C的开源库,还是相对容易看懂,而且大部分情
: 况,只要看懂出问题的一小块代码是做什么的就行了,这是C直截了当的好处。用C++的
: 库,实在太费劲,期望想只看一小块代码就够了,很多情况不可能,太抽象的坏处这时
: 候就暴露出来了。
: 最后就是劳民伤财,用C++的大项目,想搞得和C做的项目一样稳定,必须上大量QA,化
: 大量时间。
l*s
127 楼
there are many of new c++ game engines, but only 1 in java I am aware of(and
it sucks).
you see, benchmark is nice, but claiming java outperforms c++ does not enjoy
factual support. Until I see a java application in action I would not
accept it just because you say so. :-)
't
trend.
【在 g*****g 的大作中提到】
: It's because legacy game engines are written in C++ and game companies don't
: want to rewrite them.
: Library support obviously is a big reason you'd choose one language over
: another.
: Still, scripting are now used on top of game engines, you can see the trend.
it sucks).
you see, benchmark is nice, but claiming java outperforms c++ does not enjoy
factual support. Until I see a java application in action I would not
accept it just because you say so. :-)
't
trend.
【在 g*****g 的大作中提到】
: It's because legacy game engines are written in C++ and game companies don't
: want to rewrite them.
: Library support obviously is a big reason you'd choose one language over
: another.
: Still, scripting are now used on top of game engines, you can see the trend.
T*i
129 楼
这个多大项目算大项目?
Unlike previous aircraft, such as the F-22, all software for the F-35 is
written in C++ for faster code development. The Integrity DO-178B real-time
operating system (RTOS) from Green Hills Software runs on COTS Freescale
PowerPC processors.[115] The final Block 3 software for the F-35 is planned
to have 8.6 million lines of software code.[116]
wiki确实提到了crisis。
问题是,上Java就行吗?
【在 b*******s 的大作中提到】
: c++不适合做大项目,早就是定论,没必要反复说了
Unlike previous aircraft, such as the F-22, all software for the F-35 is
written in C++ for faster code development. The Integrity DO-178B real-time
operating system (RTOS) from Green Hills Software runs on COTS Freescale
PowerPC processors.[115] The final Block 3 software for the F-35 is planned
to have 8.6 million lines of software code.[116]
wiki确实提到了crisis。
问题是,上Java就行吗?
【在 b*******s 的大作中提到】
: c++不适合做大项目,早就是定论,没必要反复说了
c*3
130 楼
有些问题扫不出。举个以前碰到的一个crash的例子,有人写的程序用一个unsigned
int变量做memcpy的size。可惜在某些情况,size计算出现0-1=4294967295,他也没有
检查。
出了4294967295,然后一个内存复制,把整个进程内存全部覆盖了。程序是多线程的,
memcpy还没有结束就crash掉了,每次crash的位置完全随机。基本没有机会,crash在
memcpy的地方。
这种情况,只有一行一行读代码,或者用valgrind去检查越界。但是非常不容易重现,
用valgrind不知道要等到啥时候能碰到,加上valgrind本身还有误报。最后只有一行一
行读代码最有效。幸好代码是C写的,还容易找一些。如果代码是C++写的,不知道找到
那天去了。
【在 x****u 的大作中提到】
: 大项目都有自己的类似JAVA的对象实现,然后用工具全局扫描代码抓违反规定的,一个
: 罚20美元。
int变量做memcpy的size。可惜在某些情况,size计算出现0-1=4294967295,他也没有
检查。
出了4294967295,然后一个内存复制,把整个进程内存全部覆盖了。程序是多线程的,
memcpy还没有结束就crash掉了,每次crash的位置完全随机。基本没有机会,crash在
memcpy的地方。
这种情况,只有一行一行读代码,或者用valgrind去检查越界。但是非常不容易重现,
用valgrind不知道要等到啥时候能碰到,加上valgrind本身还有误报。最后只有一行一
行读代码最有效。幸好代码是C写的,还容易找一些。如果代码是C++写的,不知道找到
那天去了。
【在 x****u 的大作中提到】
: 大项目都有自己的类似JAVA的对象实现,然后用工具全局扫描代码抓违反规定的,一个
: 罚20美元。
z*e
131 楼
3d api跟语言什么关系
底层不都是opengl或者directx
directx据说还是opengl一个子集,没怎么搞过不太懂
而opengl你用什么语言调还不是一样的
java就是jogl了,引擎也有不少阿,jmonkey之类的
你是担心3d游戏的gc的停顿会打断游戏进程吗?
and
enjoy
accept
【在 l*********s 的大作中提到】
: there are many of new c++ game engines, but only 1 in java I am aware of(and
: it sucks).
: you see, benchmark is nice, but claiming java outperforms c++ does not enjoy
: factual support. Until I see a java application in action I would not
: accept it just because you say so. :-)
:
: 't
: trend.
底层不都是opengl或者directx
directx据说还是opengl一个子集,没怎么搞过不太懂
而opengl你用什么语言调还不是一样的
java就是jogl了,引擎也有不少阿,jmonkey之类的
你是担心3d游戏的gc的停顿会打断游戏进程吗?
and
enjoy
accept
【在 l*********s 的大作中提到】
: there are many of new c++ game engines, but only 1 in java I am aware of(and
: it sucks).
: you see, benchmark is nice, but claiming java outperforms c++ does not enjoy
: factual support. Until I see a java application in action I would not
: accept it just because you say so. :-)
:
: 't
: trend.
g*g
134 楼
I didn't say Java outperforms C++, I said they are in the same ballpark on
application level.
How many Java games run on Android these days and how many need NDK, 3D or
not?
and
enjoy
【在 l*********s 的大作中提到】
: there are many of new c++ game engines, but only 1 in java I am aware of(and
: it sucks).
: you see, benchmark is nice, but claiming java outperforms c++ does not enjoy
: factual support. Until I see a java application in action I would not
: accept it just because you say so. :-)
:
: 't
: trend.
application level.
How many Java games run on Android these days and how many need NDK, 3D or
not?
and
enjoy
【在 l*********s 的大作中提到】
: there are many of new c++ game engines, but only 1 in java I am aware of(and
: it sucks).
: you see, benchmark is nice, but claiming java outperforms c++ does not enjoy
: factual support. Until I see a java application in action I would not
: accept it just because you say so. :-)
:
: 't
: trend.
N*n
135 楼
所以说不做类型检查害死人吗。要不我怎么总看不起JS之类的动态语言呢。
【在 c****3 的大作中提到】
: 有些问题扫不出。举个以前碰到的一个crash的例子,有人写的程序用一个unsigned
: int变量做memcpy的size。可惜在某些情况,size计算出现0-1=4294967295,他也没有
: 检查。
: 出了4294967295,然后一个内存复制,把整个进程内存全部覆盖了。程序是多线程的,
: memcpy还没有结束就crash掉了,每次crash的位置完全随机。基本没有机会,crash在
: memcpy的地方。
: 这种情况,只有一行一行读代码,或者用valgrind去检查越界。但是非常不容易重现,
: 用valgrind不知道要等到啥时候能碰到,加上valgrind本身还有误报。最后只有一行一
: 行读代码最有效。幸好代码是C写的,还容易找一些。如果代码是C++写的,不知道找到
: 那天去了。
x*u
137 楼
所以说坠机了
time
planned
【在 T********i 的大作中提到】
: 这个多大项目算大项目?
: Unlike previous aircraft, such as the F-22, all software for the F-35 is
: written in C++ for faster code development. The Integrity DO-178B real-time
: operating system (RTOS) from Green Hills Software runs on COTS Freescale
: PowerPC processors.[115] The final Block 3 software for the F-35 is planned
: to have 8.6 million lines of software code.[116]
: wiki确实提到了crisis。
: 问题是,上Java就行吗?
time
planned
【在 T********i 的大作中提到】
: 这个多大项目算大项目?
: Unlike previous aircraft, such as the F-22, all software for the F-35 is
: written in C++ for faster code development. The Integrity DO-178B real-time
: operating system (RTOS) from Green Hills Software runs on COTS Freescale
: PowerPC processors.[115] The final Block 3 software for the F-35 is planned
: to have 8.6 million lines of software code.[116]
: wiki确实提到了crisis。
: 问题是,上Java就行吗?
x*u
138 楼
MS把memcpy在头文件里面就加了警告。
【在 c****3 的大作中提到】
: 有些问题扫不出。举个以前碰到的一个crash的例子,有人写的程序用一个unsigned
: int变量做memcpy的size。可惜在某些情况,size计算出现0-1=4294967295,他也没有
: 检查。
: 出了4294967295,然后一个内存复制,把整个进程内存全部覆盖了。程序是多线程的,
: memcpy还没有结束就crash掉了,每次crash的位置完全随机。基本没有机会,crash在
: memcpy的地方。
: 这种情况,只有一行一行读代码,或者用valgrind去检查越界。但是非常不容易重现,
: 用valgrind不知道要等到啥时候能碰到,加上valgrind本身还有误报。最后只有一行一
: 行读代码最有效。幸好代码是C写的,还容易找一些。如果代码是C++写的,不知道找到
: 那天去了。
【在 c****3 的大作中提到】
: 有些问题扫不出。举个以前碰到的一个crash的例子,有人写的程序用一个unsigned
: int变量做memcpy的size。可惜在某些情况,size计算出现0-1=4294967295,他也没有
: 检查。
: 出了4294967295,然后一个内存复制,把整个进程内存全部覆盖了。程序是多线程的,
: memcpy还没有结束就crash掉了,每次crash的位置完全随机。基本没有机会,crash在
: memcpy的地方。
: 这种情况,只有一行一行读代码,或者用valgrind去检查越界。但是非常不容易重现,
: 用valgrind不知道要等到啥时候能碰到,加上valgrind本身还有误报。最后只有一行一
: 行读代码最有效。幸好代码是C写的,还容易找一些。如果代码是C++写的,不知道找到
: 那天去了。
z*e
140 楼
看了下unity,底层也是opengl这些api,如果unity能用c#,那用java也没啥本质区别
,javafx底层也用了opengl,在8版本里面,所以殊途同归,最后都是那些api
The graphics engine uses Direct3D (Windows, Xbox 360), OpenGL (Mac, Windows,
Linux), OpenGL ES (Android, iOS), and proprietary APIs (consoles).
,javafx底层也用了opengl,在8版本里面,所以殊途同归,最后都是那些api
The graphics engine uses Direct3D (Windows, Xbox 360), OpenGL (Mac, Windows,
Linux), OpenGL ES (Android, iOS), and proprietary APIs (consoles).
N*n
143 楼
GC是原因之一。MANAGE CODE还有一个问题是稍微干点事就生成一大串OBJECT
吃内存,在PC上不是问题到了SERVER和MOBILE上就比较敏感了。
【在 z****e 的大作中提到】
: 你是担心gc停顿吗?
: 这个其实用软控制
: 也就是你在你可以接受gc的时候调用一下system.gc就好了
: 虽然系统不能保证一定会执行,但是绝大多数时候都会执行
: 而且你愿意的话,很多时候不释放内存也没啥大不了的
: 我所有的图片资源就全部不释放,反正也不大
: 然后等reload时候再加载,虽然说我不喜欢控制内存
: 但是不得不做时候,还是得做,desktop上就不管了
: gc停顿pc机上远不如server上那么严重
: 而最大的内存块一般都是图片,程序的gc其实小得太多太多
b*s
144 楼
这个应该是code review能发现的吧。这错误也太蠢了
【在 c****3 的大作中提到】
: 有些问题扫不出。举个以前碰到的一个crash的例子,有人写的程序用一个unsigned
: int变量做memcpy的size。可惜在某些情况,size计算出现0-1=4294967295,他也没有
: 检查。
: 出了4294967295,然后一个内存复制,把整个进程内存全部覆盖了。程序是多线程的,
: memcpy还没有结束就crash掉了,每次crash的位置完全随机。基本没有机会,crash在
: memcpy的地方。
: 这种情况,只有一行一行读代码,或者用valgrind去检查越界。但是非常不容易重现,
: 用valgrind不知道要等到啥时候能碰到,加上valgrind本身还有误报。最后只有一行一
: 行读代码最有效。幸好代码是C写的,还容易找一些。如果代码是C++写的,不知道找到
: 那天去了。
【在 c****3 的大作中提到】
: 有些问题扫不出。举个以前碰到的一个crash的例子,有人写的程序用一个unsigned
: int变量做memcpy的size。可惜在某些情况,size计算出现0-1=4294967295,他也没有
: 检查。
: 出了4294967295,然后一个内存复制,把整个进程内存全部覆盖了。程序是多线程的,
: memcpy还没有结束就crash掉了,每次crash的位置完全随机。基本没有机会,crash在
: memcpy的地方。
: 这种情况,只有一行一行读代码,或者用valgrind去检查越界。但是非常不容易重现,
: 用valgrind不知道要等到啥时候能碰到,加上valgrind本身还有误报。最后只有一行一
: 行读代码最有效。幸好代码是C写的,还容易找一些。如果代码是C++写的,不知道找到
: 那天去了。
T*g
146 楼
不同领域本身对编程语言有不同的要求,我们不用费尽去证明JAVA可以适用于所有的编
程情况。而且现在的趋势是JVM变成平台,动态语言在其上百花齐放,我们可以利用我
们对JVM的了解来进一步丰富我们的编程手段,让程序员的生活变得更容易一点。我个
人看好scala。也许有一天它可以取代JAVA。
't
trend.
【在 g*****g 的大作中提到】
: It's because legacy game engines are written in C++ and game companies don't
: want to rewrite them.
: Library support obviously is a big reason you'd choose one language over
: another.
: Still, scripting are now used on top of game engines, you can see the trend.
程情况。而且现在的趋势是JVM变成平台,动态语言在其上百花齐放,我们可以利用我
们对JVM的了解来进一步丰富我们的编程手段,让程序员的生活变得更容易一点。我个
人看好scala。也许有一天它可以取代JAVA。
't
trend.
【在 g*****g 的大作中提到】
: It's because legacy game engines are written in C++ and game companies don't
: want to rewrite them.
: Library support obviously is a big reason you'd choose one language over
: another.
: Still, scripting are now used on top of game engines, you can see the trend.
T*g
148 楼
Java在这种场景的确是不行的。银行交易中高频交易,利用收市时毫秒来套利的场景,
JAVA也不行。其实就和FB底层有很多服务是C++通过Thrift开放出来给其他语言调用一
样,C++在内存效率和速度上还不是JAVA能比的。JAVA的特长是时间和资源不那么敏感
的大规模软件开发,比如淘宝,AMAZON这种。术业有专攻吧,Java目前在BIG DATA还有
云上的火热和这些应用场景还是有关系。
time
planned
【在 T********i 的大作中提到】
: 这个多大项目算大项目?
: Unlike previous aircraft, such as the F-22, all software for the F-35 is
: written in C++ for faster code development. The Integrity DO-178B real-time
: operating system (RTOS) from Green Hills Software runs on COTS Freescale
: PowerPC processors.[115] The final Block 3 software for the F-35 is planned
: to have 8.6 million lines of software code.[116]
: wiki确实提到了crisis。
: 问题是,上Java就行吗?
JAVA也不行。其实就和FB底层有很多服务是C++通过Thrift开放出来给其他语言调用一
样,C++在内存效率和速度上还不是JAVA能比的。JAVA的特长是时间和资源不那么敏感
的大规模软件开发,比如淘宝,AMAZON这种。术业有专攻吧,Java目前在BIG DATA还有
云上的火热和这些应用场景还是有关系。
time
planned
【在 T********i 的大作中提到】
: 这个多大项目算大项目?
: Unlike previous aircraft, such as the F-22, all software for the F-35 is
: written in C++ for faster code development. The Integrity DO-178B real-time
: operating system (RTOS) from Green Hills Software runs on COTS Freescale
: PowerPC processors.[115] The final Block 3 software for the F-35 is planned
: to have 8.6 million lines of software code.[116]
: wiki确实提到了crisis。
: 问题是,上Java就行吗?
v*n
150 楼
C++的创始人说了,如果你和硬件打交道,或者追求performance,那就用C++,否则
其他语言会适合
其他语言会适合
c*3
151 楼
发现不了。计算memcpy 的size是要几个变量做四则运算的,包括减。问题是谁写代码
,每次减之前都要比较一下,是不是会出现减数比被减数大的情况,尤其是四则运算的
。太多这种检查,代码看着很难看。
大家都是assume某个逻辑,减数比被减数大的情况,在这个逻辑里不会发生,所以就不
用在代码里到处检查了。
我说的这个情况,逻辑是根据收到的数据包尺寸,计算UDP里面的某个应用数据的尺寸
,然后复制。正常情况计算都是对的,问题是网络里有时有变形或者corrupt的数据包
,报头尺寸和里面的不一致,逻辑就出问题了。
除非这些极端情况在开始都考虑到,或者不用memcpy,用比较安全不会越界的内存复制
函数。
【在 b*******s 的大作中提到】
: 这种常见低级错误,很容易发现,如果真读了代码
,每次减之前都要比较一下,是不是会出现减数比被减数大的情况,尤其是四则运算的
。太多这种检查,代码看着很难看。
大家都是assume某个逻辑,减数比被减数大的情况,在这个逻辑里不会发生,所以就不
用在代码里到处检查了。
我说的这个情况,逻辑是根据收到的数据包尺寸,计算UDP里面的某个应用数据的尺寸
,然后复制。正常情况计算都是对的,问题是网络里有时有变形或者corrupt的数据包
,报头尺寸和里面的不一致,逻辑就出问题了。
除非这些极端情况在开始都考虑到,或者不用memcpy,用比较安全不会越界的内存复制
函数。
【在 b*******s 的大作中提到】
: 这种常见低级错误,很容易发现,如果真读了代码
z*e
152 楼
这根本不是软件的领域
没有硬件的配合,软件怎么写都没用
既然开始倒腾了硬件,直接对硬件下指令显然比包来包去快不少
为什么不?不是追求快么?
【在 T*********g 的大作中提到】
: Java在这种场景的确是不行的。银行交易中高频交易,利用收市时毫秒来套利的场景,
: JAVA也不行。其实就和FB底层有很多服务是C++通过Thrift开放出来给其他语言调用一
: 样,C++在内存效率和速度上还不是JAVA能比的。JAVA的特长是时间和资源不那么敏感
: 的大规模软件开发,比如淘宝,AMAZON这种。术业有专攻吧,Java目前在BIG DATA还有
: 云上的火热和这些应用场景还是有关系。
:
: time
: planned
没有硬件的配合,软件怎么写都没用
既然开始倒腾了硬件,直接对硬件下指令显然比包来包去快不少
为什么不?不是追求快么?
【在 T*********g 的大作中提到】
: Java在这种场景的确是不行的。银行交易中高频交易,利用收市时毫秒来套利的场景,
: JAVA也不行。其实就和FB底层有很多服务是C++通过Thrift开放出来给其他语言调用一
: 样,C++在内存效率和速度上还不是JAVA能比的。JAVA的特长是时间和资源不那么敏感
: 的大规模软件开发,比如淘宝,AMAZON这种。术业有专攻吧,Java目前在BIG DATA还有
: 云上的火热和这些应用场景还是有关系。
:
: time
: planned
p*o
153 楼
数据包不验证就直接用? Assume的东西也不assert一下? 那确实是java比较安全一些 .
..
【在 c****3 的大作中提到】
: 发现不了。计算memcpy 的size是要几个变量做四则运算的,包括减。问题是谁写代码
: ,每次减之前都要比较一下,是不是会出现减数比被减数大的情况,尤其是四则运算的
: 。太多这种检查,代码看着很难看。
: 大家都是assume某个逻辑,减数比被减数大的情况,在这个逻辑里不会发生,所以就不
: 用在代码里到处检查了。
: 我说的这个情况,逻辑是根据收到的数据包尺寸,计算UDP里面的某个应用数据的尺寸
: ,然后复制。正常情况计算都是对的,问题是网络里有时有变形或者corrupt的数据包
: ,报头尺寸和里面的不一致,逻辑就出问题了。
: 除非这些极端情况在开始都考虑到,或者不用memcpy,用比较安全不会越界的内存复制
: 函数。
..
【在 c****3 的大作中提到】
: 发现不了。计算memcpy 的size是要几个变量做四则运算的,包括减。问题是谁写代码
: ,每次减之前都要比较一下,是不是会出现减数比被减数大的情况,尤其是四则运算的
: 。太多这种检查,代码看着很难看。
: 大家都是assume某个逻辑,减数比被减数大的情况,在这个逻辑里不会发生,所以就不
: 用在代码里到处检查了。
: 我说的这个情况,逻辑是根据收到的数据包尺寸,计算UDP里面的某个应用数据的尺寸
: ,然后复制。正常情况计算都是对的,问题是网络里有时有变形或者corrupt的数据包
: ,报头尺寸和里面的不一致,逻辑就出问题了。
: 除非这些极端情况在开始都考虑到,或者不用memcpy,用比较安全不会越界的内存复制
: 函数。
z*e
157 楼
前面说的那个unity就是很好的例子
最关键的部分,其实是opengl的那些api
他们用c++给封装起来,然后做成mono可用的c#接口,给客户用
其实这一块都用c的话,我觉得更好
效率有10%提升也很好,为什么不?剩下的部分用c#去写了
其实android也差不多,剩下的逻辑部分
比如你说的模型,这个其实用了jit之后,都是纯内存操作
c++和其它语言执行效率差距很小
在这时候注意规避gc,剩下也没啥了
其实这两个步骤可以分离,找一个硅工做显卡
然后找一个码农实现模型,剩下对接下就好了
这里面显然有两层,用c++有一个比较合适的理由就是
这两层都是一个人在做的话,那就用c++,这样不用使用两个语言
否则,硅工用c,码农用java,搞定
不过现在也有人用python来做,但是python一般没有jit
要pypy才有,所以这个还是会慢
【在 T*********g 的大作中提到】
: ?看不懂你说啥?你做过high freq trading? 套利模型用硬件实现?
最关键的部分,其实是opengl的那些api
他们用c++给封装起来,然后做成mono可用的c#接口,给客户用
其实这一块都用c的话,我觉得更好
效率有10%提升也很好,为什么不?剩下的部分用c#去写了
其实android也差不多,剩下的逻辑部分
比如你说的模型,这个其实用了jit之后,都是纯内存操作
c++和其它语言执行效率差距很小
在这时候注意规避gc,剩下也没啥了
其实这两个步骤可以分离,找一个硅工做显卡
然后找一个码农实现模型,剩下对接下就好了
这里面显然有两层,用c++有一个比较合适的理由就是
这两层都是一个人在做的话,那就用c++,这样不用使用两个语言
否则,硅工用c,码农用java,搞定
不过现在也有人用python来做,但是python一般没有jit
要pypy才有,所以这个还是会慢
【在 T*********g 的大作中提到】
: ?看不懂你说啥?你做过high freq trading? 套利模型用硬件实现?
z*e
161 楼
re这个
所以c++最大的问题其实是paradigm太多
c++可以象c一样pp,也可以象java一样oop,还打算象lisp一样fp
这种多种paradigm冲突的语言没有一个有前途的
scala也有类似的问题,oop和fp各占一半,冲突得厉害
上次说的google那个用python失败的例子也是类似原因
这些说白了,就是人的思维方式的差异,不同人有不同的偏好
如果不确定下来,构架上都能吵死,就算别人听了,标准定下来了
也不代表会遵照执行,指望code review也不靠谱
凡是人,都会有自己的一点小算盘,就会出现猴屁股当年说的
用c++的项目,基本上都以吵架收尾
反观成功的语言,c,java都能很清晰地判断出是什么paradigm
至少可以指出是什么paradigm为主,一个语言的paradigm,越纯粹越好
越容易fit in某一个特定的领域,任何paradigm都有明显的优缺点
paradigms越平均的语言越糟糕,貌似什么都能做,结果什么都不能做
最好的方式就是从机器执行上予以限制
只要是java,你就不可能不oop,象c一样写java,很容易精分
同样,用oop去写lisp,也很容易精分
现代社会,公司里面流动性太强,铁打的营盘流水的兵
过几个月就换一播人,很正常
最近在看晓说,说对越自卫反击战期间,天朝军队居然没有军衔
结果导致战争期间,不同部队的人凑到一起了,居然不知道听谁的
军衔设立很重要一个原因就是在战争期间,经常不同组织的人凑到一起
然后遇到了,第一句话就是,你们谁是负责人?然后走出一个军衔最高的
然后两边比一下军衔,一般就决定了听谁的,指挥集中,虽然互相不认识
但是也不会吵,但是文革期间,天朝军队的军衔结构被破坏了
导致战争期间被包围了,连个指挥官都选不出来,只好各自突围,结局可想而知了
人这个动物,是最不靠谱的,相信什么都不要轻信人,尤其不要相信人不会犯错
只要是个错误,人就能犯出来
【在 q*c 的大作中提到】
: 这话说的,当年 so big 病毒也就是 两行这样的问题每行微软花了五亿美元嘛。
: 要是人永远不犯错,那的却是不一样。问题是人不但犯错,还经常犯。
:
: .
所以c++最大的问题其实是paradigm太多
c++可以象c一样pp,也可以象java一样oop,还打算象lisp一样fp
这种多种paradigm冲突的语言没有一个有前途的
scala也有类似的问题,oop和fp各占一半,冲突得厉害
上次说的google那个用python失败的例子也是类似原因
这些说白了,就是人的思维方式的差异,不同人有不同的偏好
如果不确定下来,构架上都能吵死,就算别人听了,标准定下来了
也不代表会遵照执行,指望code review也不靠谱
凡是人,都会有自己的一点小算盘,就会出现猴屁股当年说的
用c++的项目,基本上都以吵架收尾
反观成功的语言,c,java都能很清晰地判断出是什么paradigm
至少可以指出是什么paradigm为主,一个语言的paradigm,越纯粹越好
越容易fit in某一个特定的领域,任何paradigm都有明显的优缺点
paradigms越平均的语言越糟糕,貌似什么都能做,结果什么都不能做
最好的方式就是从机器执行上予以限制
只要是java,你就不可能不oop,象c一样写java,很容易精分
同样,用oop去写lisp,也很容易精分
现代社会,公司里面流动性太强,铁打的营盘流水的兵
过几个月就换一播人,很正常
最近在看晓说,说对越自卫反击战期间,天朝军队居然没有军衔
结果导致战争期间,不同部队的人凑到一起了,居然不知道听谁的
军衔设立很重要一个原因就是在战争期间,经常不同组织的人凑到一起
然后遇到了,第一句话就是,你们谁是负责人?然后走出一个军衔最高的
然后两边比一下军衔,一般就决定了听谁的,指挥集中,虽然互相不认识
但是也不会吵,但是文革期间,天朝军队的军衔结构被破坏了
导致战争期间被包围了,连个指挥官都选不出来,只好各自突围,结局可想而知了
人这个动物,是最不靠谱的,相信什么都不要轻信人,尤其不要相信人不会犯错
只要是个错误,人就能犯出来
【在 q*c 的大作中提到】
: 这话说的,当年 so big 病毒也就是 两行这样的问题每行微软花了五亿美元嘛。
: 要是人永远不犯错,那的却是不一样。问题是人不但犯错,还经常犯。
:
: .
z*e
162 楼
顺便说一下
lips里面clojure可能可以用来搞skynet
但是最先有可能发迹的,还是统计等领域的那些languages
比如r什么的,毕竟ai要发飙,还没看到多少曙光
r这种早被证明过的语言,赶紧搬到jvm上去才是正经事
不管怎样,这些都是jvm上的东西,而jvm是java的一部分
无论将来怎么发展,java是绕不开的
lips里面clojure可能可以用来搞skynet
但是最先有可能发迹的,还是统计等领域的那些languages
比如r什么的,毕竟ai要发飙,还没看到多少曙光
r这种早被证明过的语言,赶紧搬到jvm上去才是正经事
不管怎样,这些都是jvm上的东西,而jvm是java的一部分
无论将来怎么发展,java是绕不开的
w*r
175 楼
主要是能正确练葵花宝典的人少,而不是该宝典不适合练绝世武功。等你写过20w
line+的大程序再来喷
line+的大程序再来喷
q*c
178 楼
the very reason java or csharp languages got invented, is bcause many, many
people, even some good programmers, can not use c++ "properly".
so we end up big ugly unmaintainable c++ code everywhere. lol
【在 p*u 的大作中提到】
:
: code
: like someone said earlier, using C++ properly can make ur code base much
: smaller and much easier 2 understand.
people, even some good programmers, can not use c++ "properly".
so we end up big ugly unmaintainable c++ code everywhere. lol
【在 p*u 的大作中提到】
:
: code
: like someone said earlier, using C++ properly can make ur code base much
: smaller and much easier 2 understand.
w*r
183 楼
java 是为烙印发明的,是为c++写不好的马工而生
为从来不为design和编程思想 而费心思的人而生
为从来不为design和编程思想 而费心思的人而生
y*k
185 楼
C++不适合做大项目? 这个观点很新颖啊。大家都做过多大的项目啊?凡是做backend
的,web server, media server, mail server, whatever servers, 我看到的c++的层
出不穷啊。不会c++来做server?是用java吗?讲讲java的大项目有哪些?
大家有没有用过c++11?这个好象整合了很多新功能。Interface方面,越来越
scripting化了。不过这个还是太新。
【在 w***g 的大作中提到】
: 但是也有不少pay得很好的工作是写算法。我主要的工作就是用C++写一些螺丝钉一样的
: 程序。每个最多也就几千行,一年也写不了一两个。但是性能需要达到极致。你要用
: java,有那启动程序的时间我结果都跑出来了。一个比较好的比喻是C++就是做剑法的
: ,java是做剑阵的。20年前用C++做剑阵的那叫没办法,但现在还用C++做剑阵除了解决
: 历史遗留问题以外只能是脑子有问题了。如果是做速度的,别说C++,关键时候汇编也
: 得上。只是很多东西都隐藏在接口后面,大部分做java的看不到而已。
的,web server, media server, mail server, whatever servers, 我看到的c++的层
出不穷啊。不会c++来做server?是用java吗?讲讲java的大项目有哪些?
大家有没有用过c++11?这个好象整合了很多新功能。Interface方面,越来越
scripting化了。不过这个还是太新。
【在 w***g 的大作中提到】
: 但是也有不少pay得很好的工作是写算法。我主要的工作就是用C++写一些螺丝钉一样的
: 程序。每个最多也就几千行,一年也写不了一两个。但是性能需要达到极致。你要用
: java,有那启动程序的时间我结果都跑出来了。一个比较好的比喻是C++就是做剑法的
: ,java是做剑阵的。20年前用C++做剑阵的那叫没办法,但现在还用C++做剑阵除了解决
: 历史遗留问题以外只能是脑子有问题了。如果是做速度的,别说C++,关键时候汇编也
: 得上。只是很多东西都隐藏在接口后面,大部分做java的看不到而已。
t*y
186 楼
为什么不能做大项目?
我觉得这个主要是架构设计的问题吧。还是需要一个高高手领导的。
如果架构可以,就看生成的任务了,能够细化,逻辑清晰的话也没问题吧。
我觉得在这个web 和 mobile的时代,C++的落伍主要是 Framework 太少了。而且 C++
对于代码的质量要求确实比 C#,python 这些高(不会Java)。这个也就让开发速度无
法和其他的相比了。
但是说不能做大项目,这个就有点不合适了。
我觉得这个主要是架构设计的问题吧。还是需要一个高高手领导的。
如果架构可以,就看生成的任务了,能够细化,逻辑清晰的话也没问题吧。
我觉得在这个web 和 mobile的时代,C++的落伍主要是 Framework 太少了。而且 C++
对于代码的质量要求确实比 C#,python 这些高(不会Java)。这个也就让开发速度无
法和其他的相比了。
但是说不能做大项目,这个就有点不合适了。
t*y
188 楼
不讨论具体个人问题,因为我不了解这里的任何一个人。
就事论事。每个公司,或者说leader都要面临手下的人水平不能满足的问题。我觉得这
个应该是在架构设计的时候要考虑到的,而且应该强调 code style 的重要性,这个是
一个项目组成部分。
对手下人的能力有认识,分工的时候有区别,多review code,带领大家提高,其实也
就是1,2个月,大家写code的样子就差不多了。当然,我这个是指在10个人左右的小组
中的事情。但是,无论多大的项目,也是一个组一个组的在做。统一思想,项目是没有
问题的。
当然了,现在用 C++ 的开发web 和 mobile 的速度是远远无法与其他相比的,毕竟
Framework 在那里摆着呢。
【在 d********f 的大作中提到】
: 因为大部分工资10来万的马宫只有赵策同学的水平,作大项目你做不起啊
:
: +
就事论事。每个公司,或者说leader都要面临手下的人水平不能满足的问题。我觉得这
个应该是在架构设计的时候要考虑到的,而且应该强调 code style 的重要性,这个是
一个项目组成部分。
对手下人的能力有认识,分工的时候有区别,多review code,带领大家提高,其实也
就是1,2个月,大家写code的样子就差不多了。当然,我这个是指在10个人左右的小组
中的事情。但是,无论多大的项目,也是一个组一个组的在做。统一思想,项目是没有
问题的。
当然了,现在用 C++ 的开发web 和 mobile 的速度是远远无法与其他相比的,毕竟
Framework 在那里摆着呢。
【在 d********f 的大作中提到】
: 因为大部分工资10来万的马宫只有赵策同学的水平,作大项目你做不起啊
:
: +
d*f
189 楼
我实事求是,我必须承认我的C++水平根本做不了大项目,就以我的经验来说,C++你能
开放像样的项目,没有3年以上hand-on经验是不可能的。能做framework的都需要10年
左右的经验。就从c++普及的历史来看,这样的马宫几乎没有30,50w根本找不到,就算
你有钱,你也没有这么长的开发周期。所以从项目管理的角度来说,我同意c++作不了
现在流行的web,mobile之类的应用,成本是一切
【在 t*******y 的大作中提到】
: 不讨论具体个人问题,因为我不了解这里的任何一个人。
: 就事论事。每个公司,或者说leader都要面临手下的人水平不能满足的问题。我觉得这
: 个应该是在架构设计的时候要考虑到的,而且应该强调 code style 的重要性,这个是
: 一个项目组成部分。
: 对手下人的能力有认识,分工的时候有区别,多review code,带领大家提高,其实也
: 就是1,2个月,大家写code的样子就差不多了。当然,我这个是指在10个人左右的小组
: 中的事情。但是,无论多大的项目,也是一个组一个组的在做。统一思想,项目是没有
: 问题的。
: 当然了,现在用 C++ 的开发web 和 mobile 的速度是远远无法与其他相比的,毕竟
: Framework 在那里摆着呢。
开放像样的项目,没有3年以上hand-on经验是不可能的。能做framework的都需要10年
左右的经验。就从c++普及的历史来看,这样的马宫几乎没有30,50w根本找不到,就算
你有钱,你也没有这么长的开发周期。所以从项目管理的角度来说,我同意c++作不了
现在流行的web,mobile之类的应用,成本是一切
【在 t*******y 的大作中提到】
: 不讨论具体个人问题,因为我不了解这里的任何一个人。
: 就事论事。每个公司,或者说leader都要面临手下的人水平不能满足的问题。我觉得这
: 个应该是在架构设计的时候要考虑到的,而且应该强调 code style 的重要性,这个是
: 一个项目组成部分。
: 对手下人的能力有认识,分工的时候有区别,多review code,带领大家提高,其实也
: 就是1,2个月,大家写code的样子就差不多了。当然,我这个是指在10个人左右的小组
: 中的事情。但是,无论多大的项目,也是一个组一个组的在做。统一思想,项目是没有
: 问题的。
: 当然了,现在用 C++ 的开发web 和 mobile 的速度是远远无法与其他相比的,毕竟
: Framework 在那里摆着呢。
t*y
190 楼
我同意你说的开发周期长,相对成本高,所以用的越来越少。
“没有3年以上hand-on经验是不可能的”这个不一定的。
选好领头人,年轻人的学习能力真的非常强。上手很快的。而且不会需要他们做架构的
,只是完成功能,这个好说。
【在 d********f 的大作中提到】
: 我实事求是,我必须承认我的C++水平根本做不了大项目,就以我的经验来说,C++你能
: 开放像样的项目,没有3年以上hand-on经验是不可能的。能做framework的都需要10年
: 左右的经验。就从c++普及的历史来看,这样的马宫几乎没有30,50w根本找不到,就算
: 你有钱,你也没有这么长的开发周期。所以从项目管理的角度来说,我同意c++作不了
: 现在流行的web,mobile之类的应用,成本是一切
“没有3年以上hand-on经验是不可能的”这个不一定的。
选好领头人,年轻人的学习能力真的非常强。上手很快的。而且不会需要他们做架构的
,只是完成功能,这个好说。
【在 d********f 的大作中提到】
: 我实事求是,我必须承认我的C++水平根本做不了大项目,就以我的经验来说,C++你能
: 开放像样的项目,没有3年以上hand-on经验是不可能的。能做framework的都需要10年
: 左右的经验。就从c++普及的历史来看,这样的马宫几乎没有30,50w根本找不到,就算
: 你有钱,你也没有这么长的开发周期。所以从项目管理的角度来说,我同意c++作不了
: 现在流行的web,mobile之类的应用,成本是一切
相关阅读
uber撞死人的视频[bssd]我现在有个难题deep learning 的时候要把所有数据都读到内存里?训练模型该拜哪个菩萨?ruby 和python比, 谁赢?区块链真正有意义的地方是Python的threading能共享generator吗?Js machine learning lib好的OS和自动驾驶设计理念是不一样的不要在well defined的问题上浪费时间golang性能比C和Cpp差好遠,尤其在非x86平台,跟本不是宣傳的人人网陨落: 王兴的“娃”, 被陈一舟养的面目全非wdong问问你太太再说google pixel的wifi问题[bssd]雷军与老刑WiFi发展不起来的原因转行马工有无可能牛逼dataframe和SQL最大区别是什么呢老形也跟上形式了,开始搞区块链伪逼 (转载)Chenio的未名空间和华人阅读器都下架了? (转载)