「C++」を含む日記 RSS

はてなキーワード: C++とは

2018-09-24

anond:20180924095349

現場10年頑張ってる人には敵わないかな。C・C++JavaPHPPython趣味程度に勉強してきた。知り合いに技術者がいるならその人に頼ったほうが俺に聞くよりいいと思う。聞く人がいないなら学校行くか良書を探す方法があるね。プログラミングを実際おこなっている動画を見るのもありだな。大工が家を建てるのと同じで本見ただけじゃ分かり難いとこがある。

上には書いてないけど金があるなら本を買うのが大事、優れた良書は家庭教師と同じくらい役に立つ。あと1500円くらいのその言語関数の一覧が分かる本。その2冊くらいは最低必要言語自体流行り廃りや潜在的な使いやすさもあるけど、ライブラリ解説書が揃っていることも重要最後に迷ったら言語使用人数が多い言語を選ぶという手もある。分からなくなった時にWeb関数名や用途検索すれば大体の場合検索に引っかかる。例えばこんな感じ「Ruby 配列 追加」「HSP 円」マイナー言語だとこれに引っかからない場合がある。

2018-09-12

anond:20180910094331

なんか書いといたほうがいいような気がしたので書いておく。

組み込みといっても範囲が広く、

最初あなた相手にするのはRAM 1kB, ROM 4kB、クロック 20MHzなどというMCUである

なんてところもあれば、中身はARMLinuxですみたいなところもあるし、その中間RTOS使ってます。ということもある。

ただ、歴史的経緯として、マイコン制御などと呼ばれていたような時代から組込みソフトウェア開発がはじまって、

時代をくだるにつれて最終製品機能が高機能化、複雑化するにしたがってソフトウェア開発の規模も比例的に、

あるいは指数関数的に拡大しているわけで、NonOSアセンブラやCで書くという仕事相対的に減っている。

(なんせ、ある程度高価格、高付加価値製品を作らなければ国内メーカーは潰れるしかない)

なので、一番規模が小さいところの仕事はなくなりはしないし、働いている人は食いっぱぐれないとは思うけど、

わざわざ新たに飛び込むのは正直オススメしない。

で、問題は規模の大きい方で、当時マイコン制御をやっていたようなベテランやそれに薫陶を受けた開発者

勉強」をせずにこちらの方にコンバートするとどうなるかという話だ。

コンパイラC++11,C++14であるにもかかわらず、Cもどきコードを書くし、プロセスは巨大だし、

強烈に古臭いアーキテクチャを擬似的にOS上に構築してしまう。

その結果出現するのは、ひたすら肥大化アンタッチャブルになったコードと原因不明バグである

IoTがどうのこうのなんて言っていても、組み込みが専門じゃない人がラズパイセンサー買ってきて

一日半あればできるようなことを、ああだこうだやっているようじゃやっぱり生き残る道はないんじゃないかなー。

2018-09-10

anond:20180909073549

組込み界では今時のプログラミング界隈の常識の多くが通用しない。最初あなた相手にするのはRAM 1kB, ROM 4kB、クロック 20MHzなどというMCUである

使用する言語はC99かアセンブラである。幸か不幸かC++を使わされることもある。既にC++で書かれたプロダクトに係わってはならない。

当然フロントエンド界隈などのようなイミュータブルインスタンスを大量に使い捨て富豪的言語アプローチ採用は難しいだろう。

トラブルが起きたときプログラムだけでなく回路図を読んでハード側に問題があるこを示せないと極めて立場が悪くなる。

しろプログラムし易いコンポーネント選択や回路構成積極的に口を出していかないと動かない責任けがソフト担当者に投げられて割を食う。

開発環境Windows上のEclipseベース統合環境が使えれば上等であり、運が悪ければMCUメーカーお仕着せのクソIDEを使わせられる。Mac優雅に開発することはまずあり得ないだろう。

底辺企業バージョンコントロールシステムの導入のための意識改革簡単ではない。もし強行に導入しようとすればあなた孤立する。

誰かがIoTだ、機械学習だの言い始めても社全体として主力製品を作るのでなければ本気で取り組んではいけない。あなたがそのテクノロジー理解していても誰もサポートメンテもしてくれないのだから

anond:20170827112731

android-9.0.0_r8

repo sync

ローカルミラーからsync。同一HDD

Fetching projects: 100% (668/668), done.  
Checking out files: 100% (7881/7881), done.
Checking out files: 100% (15939/15939), done. files:  12% (2013/15939)   
Checking out files: 100% (8013/8013), done.
Checking out files: 100% (6701/6701), done.
Checking out files: 100% (9166/9166), done.out files:   2% (236/9166)   
Checking out files: 100% (15547/15547), done.t files:  29% (4600/15547)   
Checking out files: 100% (12/12), done.
Checking out files: 100% (2500/2500), done.out files:  35% (884/2500)   
Checking out files: 100% (9195/9195), done.out files:  16% (1502/9195)   
Checking out files: 100% (1055/1055), done.out files:  22% (240/1055)   
Checking out files: 100% (12663/12663), done.t files:   9% (1141/12663)   
Checking out files: 100% (3965/3965), done.out files:  20% (824/3965)   
Checking out files: 100% (9487/9487), done. out files:  16% (1529/9487)   
Checking out files: 100% (94/94), done.king out files:  34% (32/94)   
Checking out files: 100% (6246/6246), done. out files:   2% (171/6246)   
Checking out files: 100% (1461/1461), done. out files:  46% (677/1461)   
Checking out files: 100% (118/118), done.
Checking out files: 100% (761/761), done.ng out files:   8% (64/761)   
Checking out files: 100% (266/266), done.
Checking out files: 100% (21720/21720), done.
Checking out files: 100% (5502/5502), done. out files:  23% (1281/5502)   
Checking out files: 100% (259/259), done.ng out files:  35% (92/259)   
Checking out files: 100% (679/679), done.ng out files:  20% (139/679)   
Checking out files: 100% (828/828), done.ng out files:  17% (141/828)   
Checking out files: 100% (4534/4534), done. out files:  42% (1948/4534)   
Checking out files: 100% (4112/4112), done.
Checking out files: 100% (198/198), done.ng out files:   1% (2/198)   
Checking out files: 100% (4584/4584), done.
Checking out files: 100% (5661/5661), done. out files:  29% (1694/5661)   
Checking out files: 100% (400/400), done.
Checking out files: 100% (9937/9937), done. out files:  12% (1254/9937)   
Checking out files: 100% (488/488), done.ng out files:   4% (23/488)   
Checking out files: 100% (2818/2818), done. out files:   8% (228/2818)   
Checking out files: 100% (2842/2842), done.
Checking out files: 100% (4195/4195), done. out files:   7% (319/4195)   
Checking out files: 100% (30060/30060), done.ut files:   2% (782/30060)   
Checking out files: 100% (1478/1478), done. out files:   7% (114/1478)   
Checking out files: 100% (8122/8122), done. out files:  24% (2010/8122)   
Checking out files: 100% (43/43), done.king out files:   4% (2/43)   
Checking out files: 100% (2040/2040), done. out files:  30% (615/2040)   
Checking out files: 100% (6259/6259), done. out files:  46% (2894/6259)   
Checking out files: 100% (4276/4276), done. out files:  28% (1238/4276)   
Checking out files: 100% (417/417), done.ng out files:  49% (206/417)   
Checking out files: 100% (3226/3226), done.
Checking out files: 100% (323/323), done.ng out files:   4% (14/323)   
Checking out files: 100% (16/16), done.king out files:  43% (7/16)   
Checking out files: 100% (15073/15073), done.
Checking out files: 100% (16166/16166), done.
Checking out files: 100% (189/189), done.ng out files:   1% (3/189)   
Checking out files: 100% (220/220), done.
Checking out files: 100% (191/191), done.ng out files:  33% (64/191)   
Checking out files: 100% (4427/4427), done.
Checking out files: 100% (7584/7584), done. out files:  12% (974/7584)   
Checking out files: 100% (7584/7584), done.
Checking out files: 100% (33748/33748), done.
Checking out files: 100% (683/683), done.
Checking out files: 100% (763/763), done.
Checking out files: 100% (12188/12188), done.ut files:  14% (1779/12188)   
Checking out files: 100% (2218/2218), done.
Checking out files: 100% (8081/8081), done.
Checking out files: 100% (73/73), done.king out files:  43% (32/73)   
Checking out files: 100% (4084/4084), done.
Checking out files: 100% (10157/10157), done.
Checking out files: 100% (1150/1150), done.
Checking out files: 100% (891/891), done.ng out files:  12% (111/891)   
Checking out files: 100% (67/67), done.king out files:  49% (33/67)   
Checking out files: 100% (18572/18572), done.
Checking out files: 100% (17/17), done.king out files:  35% (6/17)   
Syncing work tree: 100% (668/668), done.  

real	124m38.905s
user	178m3.356s
sys	15m38.860s

いねえ・・

ls

Android.bp      build          device      libnativehelper   system
Makefile        compatibility  external    packages          test
art             cts            frameworks  pdk               toolchain
bionic          dalvik         hardware    platform_testing  tools
bootable        developers     kernel      prebuilts         zip
bootstrap.bash  development    libcore     sdk

du -hs

66G	android-9.0.0_r8/
30G	android-9.0.0_r8/.repo/

ソースだけで30GB超w

build

$ source buile/envsetup.sh
including device/generic/car/vendorsetup.sh
including device/generic/mini-emulator-arm64/vendorsetup.sh
including device/generic/mini-emulator-armv7-a-neon/vendorsetup.sh
including device/generic/mini-emulator-mips/vendorsetup.sh
including device/generic/mini-emulator-mips64/vendorsetup.sh
including device/generic/mini-emulator-x86/vendorsetup.sh
including device/generic/mini-emulator-x86_64/vendorsetup.sh
including device/generic/uml/vendorsetup.sh
including device/google/cuttlefish/vendorsetup.sh
including device/google/marlin/vendorsetup.sh
including device/google/muskie/vendorsetup.sh
including device/google/taimen/vendorsetup.sh
including device/linaro/hikey/vendorsetup.sh
including sdk/bash_completion/adb.bash

$ lunch

You're building on Linux

Lunch menu... pick a combo:
     1. aosp_arm-eng
     2. aosp_arm64-eng
     3. aosp_mips-eng
     4. aosp_mips64-eng
     5. aosp_x86-eng
     6. aosp_x86_64-eng
     7. aosp_car_arm-userdebug
     8. aosp_car_arm64-userdebug
     9. aosp_car_x86-userdebug
     10. aosp_car_x86_64-userdebug
     11. mini_emulator_arm64-userdebug
     12. m_e_arm-userdebug
     13. m_e_mips-userdebug
     14. m_e_mips64-eng
     15. mini_emulator_x86-userdebug
     16. mini_emulator_x86_64-userdebug
     17. uml-userdebug
     18. aosp_cf_x86_auto-userdebug
     19. aosp_cf_x86_phone-userdebug
     20. aosp_cf_x86_tablet-userdebug
     21. aosp_cf_x86_tablet_3g-userdebug
     22. aosp_cf_x86_tv-userdebug
     23. aosp_cf_x86_wear-userdebug
     24. aosp_cf_x86_64_auto-userdebug
     25. aosp_cf_x86_64_phone-userdebug
     26. aosp_cf_x86_64_tablet-userdebug
     27. aosp_cf_x86_64_tablet_3g-userdebug
     28. aosp_cf_x86_64_tv-userdebug
     29. aosp_cf_x86_64_wear-userdebug
     30. cf_x86_auto-userdebug
     31. cf_x86_phone-userdebug
     32. cf_x86_tablet-userdebug
     33. cf_x86_tablet_3g-userdebug
     34. cf_x86_tv-userdebug
     35. cf_x86_wear-userdebug
     36. cf_x86_64_auto-userdebug
     37. cf_x86_64_phone-userdebug
     38. cf_x86_64_tablet-userdebug
     39. cf_x86_64_tablet_3g-userdebug
     40. cf_x86_64_tv-userdebug
     41. cf_x86_64_wear-userdebug
     42. aosp_marlin-userdebug
     43. aosp_marlin_svelte-userdebug
     44. aosp_sailfish-userdebug
     45. aosp_walleye-userdebug
     46. aosp_walleye_test-userdebug
     47. aosp_taimen-userdebug
     48. hikey-userdebug
     49. hikey64_only-userdebug
     50. hikey960-userdebug

Which would you like? [aosp_arm-eng] 42

make -j4

PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=9
TARGET_PRODUCT=aosp_marlin
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=arm64
TARGET_ARCH_VARIANT=armv8-a
TARGET_CPU_VARIANT=kryo
TARGET_2ND_ARCH=arm
TARGET_2ND_ARCH_VARIANT=armv8-a
TARGET_2ND_CPU_VARIANT=kryo
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-4.8.0-36-generic-x86_64-Ubuntu-16.04.2-LTS
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=PPR2.180905.006.A1
OUT_DIR=out

============================================
[1/1] out/soong/.minibootstrap/minibp out/soong/.bootstrap/build.ninja
[55/56] glob prebuilts/ndk/cpufeatures.bp
[77/77] out/soong/.bootstrap/bin/soong_build out/soong/build.ninja
out/build-aosp_marlin-cleanspec.ninja is missing, regenerating...
out/build-aosp_marlin.ninja is missing, regenerating...
[564/934] including system/sepolicy/Android.mk ...
system/sepolicy/Android.mk:79: warning: BOARD_SEPOLICY_VERS not specified, assuming current platform version
[934/934] including tools/tradefederation/core/Android.mk ...
build/make/core/Makefile:28: warning: overriding commands for target `out/target/product/marlin/system/lib/libclcore_neon.bc'
build/make/core/base_rules.mk:412: warning: ignoring old commands for target `out/target/product/marlin/system/lib/libclcore_neon.bc'
build/make/core/Makefile:28: warning: overriding commands for target `out/target/product/marlin/system/lib64/libminui.so'
build/make/core/base_rules.mk:412: warning: ignoring old commands for target `out/target/product/marlin/system/lib64/libminui.so'
build/make/core/Makefile:28: warning: overriding commands for target `out/target/product/marlin/system/lib64/libbcc.so'
build/make/core/base_rules.mk:412: warning: ignoring old commands for target `out/target/product/marlin/system/lib64/libbcc.so'
build/make/core/Makefile:28: warning: overriding commands for target `out/target/product/marlin/system/lib/libion.so'
build/make/core/base_rules.mk:412: warning: ignoring old commands for target `out/target/product/marlin/system/lib/libion.so'
build/make/core/Makefile:28: warning: overriding commands for target `out/target/product/marlin/system/lib64/libLLVM_android.so'
build/make/core/base_rules.mk:412: warning: ignoring old commands for target `out/target/product/marlin/system/lib64/libLLVM_android.so'
build/make/core/Makefile:28: warning: overriding commands for target `out/target/product/marlin/system/lib/libminui.so'
build/make/core/base_rules.mk:412: warning: ignoring old commands for target `out/target/product/marlin/system/lib/libminui.so'
[ 99% 722/723] glob tools/tradefederation/core/atest/**/*.py

Android.mkファイルを900以上読み込み完了

[  0% 113/89294] host C++: libadb <= system/core/adb/client/usb_linux.cpp

どこまで行くかな〜〜

追記

時間で20%進んだ。単純計算で100%まで5時間

やむを得ず今日はこのまま出るか。

会社からリモートできりゃいいんだけどな

やったー!

#### build completed successfully (08:56:47 (hh:mm:ss)) ####

real	536m47.886s
user	2057m24.280s
sys	55m15.296s

ビルド成功〜〜。約9時間

 

朝仕掛けておけば、定時帰宅前には終わってるなw

AOSPロムビルド

$ time make otapackage

============================================
ninja: no work to do.
ninja: no work to do.
wildcard(out/target/product/marlin/clean_steps.mk) was changed, regenerating...
No need to regenerate ninja file
[ 99% 250/251] Package target files: o...sp_marlin-target_files-eng.unko.zip
Warning: could not read VENDOR/build.prop

#### build completed successfully (14:58 (mm:ss)) ####

real	14m58.814s
user	41m56.244s
sys	1m7.420s

du -hs

66G	android-9.0.0_r8/
30G	android-9.0.0_r8/.repo/
94G	out/

おまwww ビルドバイナリ100GBいきそうww

df -h

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2       1.8T  1.7T   43G  98% /home

ああああああああああああ

2018-09-03

Unityってどうなの?

知人がUnityエンジニアUnityの万能っぷりをすごく推してくるのだけどそんなにすごいの?

大手ゲームアプリ開発ではほぼ必須とのことだけどそんなに利用されてるのかな?

ちょっと触ってみた感じだと動作がめちゃくちゃ重いような気がする。

それとiOS向けにビルドするとサイズがめちゃくちゃでかい

ちょっとしたテストアプリでも100M超えてしまう。

きっとチューニング方法とかあるんだろうけど

素人が使ってまともなゲームなんて作れるんだろうか?

シンプルゲームならcocos2dxの方がサクサク動作して開発しやすいと思うんだがなぁ。

私がC++原理主義老害化してきるのだろうか・・・

業務で使っている人にUnity感想聞きたい。

2018-08-09

xyzzy 使いに 50 の質問

01. ハンドルネームは?

  増田

02. ご職業、年齢はいくつですか?

  なんでも屋さん、アラサー

03. xyzzyについて何かwebサイトを持っていますか?

  持っていません

04. 現在使用中の xyzzyバージョンは何ですか?

 0.2.2.253

05. xyzzy 使用暦はどれくらいですか?

  15年くらい

06. xyzzy を使うようになったきっかけは何ですか?

  昔のことすぎて忘れましたが、学校UNIX 演習で Emacs を使っていたので、Windows でも使おうと思っていて見つけたんだと思います

07. xyzzy 以外に使っているテキストエディタはありますか?

  Atom, McEditor

08. xyzzy を使う前に Emacs 系のテキストエディタを使ったことはありますか?

  はい

09. xyzzy を主に何に利用していますか?

  プログラムを書いたり設定ファイルをいじったり、テキストに関することならだいたい

10. xyzzy が関連付けされているファイルタイプは何ですか?

  txt, md, log, ini, bat, html, xml, css, less, scss, sass, styl, js, coffee, pl, php, py, rb, java, sqlかにもあるかも

11. xyzzy他人に勧めたことはありますか? また、結果はどうでしたか?

  使い始めた当時同級生が何人か使っていました

12. xyzzyフリーじゃなかったとしたらいくら位の値段になると思いますか?

  今なら3000円くらいなら買う

13. xyzzy を何と呼んでいますか?

  じじー

14. xyzzy の好きな点・嫌いな点はどこですか?

  好きな点:動作をほぼ自在カスタマイズできる点

  嫌いな点:動作カスタマイズするとき不自由なところがある点

15. パソコンを立ち上げている時間の内、xyzzy をどのくらい使っていますか?

  業務ときは3割くらい?

16. キーバインドWindows風ですか? Emacs風ですか? オリジナルですか?

  Emacs

17. .xyzzyに書く派ですか? .siteinitに書く派ですか?

  必要に応じてそれぞれに

18. 拡張Lispバイトコンパイルしますか?

  してます

19. セレクションリージョン、どちらを多く使いますか?

  リージョン

20. xyzzy を使っていて挫折したことはありますか?

  はじめのころ五目並べになかなか勝てなくて挫折しました

21. xyzzy の使い方をどうやって学びましたか?

  実際にさわりながら。LispGoogle 先生さまさま

22. xyzzy を使うにあたって一番苦労したことは何ですか?

  xyzzy 自体Lisp APIマニュアル化されていないところ

23. xyzzy を使って目からウロコだった機能は何ですか?

  Buffer Menu

24. 今の xyzzy に望むことはありますか? またそれは何ですか?

  矩形機能に影響が出そうだけどプロポーショナルフォントへの対応と、絵文字など最近 Unicode に追加された文字への対応

25. Lisp はある程度読み書きできますか?

  xyzzy自分の使いやすいようにできる程度には

26. Lisp のほかに読み書きできるプログラム言語はありますか?

  JavaScript, ES 2016, Coffee Script, Action Script 3, C, C++のごく一部, Objective-C, Rust, Swift, Perl, PHP, Python, Ruby, bash, xyzzy lisp

27. 自分で作った 拡張Lisp を公開していますか?

  GitHubGist にあるので探してください

28. 拡張Lisp で導入しているものは何ですか? (多い方は代表的ものをお答えください)

  clickable-uri, jscript-mode, markdown-mode など

29. これは外せない! という 拡張Lisp はありますか? またそれは何ですか?

  いろいろやるので今ある拡張機能がないと無理

30. NetInstaller を利用していますか?

  はい

31. 拡張DLL を導入していますか? またそれは何ですか?

  popup-dododo のための Cairo とか?

32. ドキュメント(info,reference等) は使っていますか? また、それは何ですか?

  使っていません。自分で改造してキーワードを全部 Web検索するようにしています

33. ネット関係拡張Lisp(www-mode,kamail等)を使っていますか?

  xyttr

34. アウトライン系のLispは使っていますか? またそれは何ですか?

  使っていません

35. メモ系(changelog-memo,howm等)Lispは使っていますか? またそれは何ですか?

  使っていません

36. xyzzy五目並べはやったことがありますか? また、結果はどうでしたか?

  今なら結構勝てます

37. キーボードマクロは使いますか?

  たまに。テキストの整形処理なら正規表現ゴリゴリやるほうが多いです

38. 辞書機能は使いますか?

  使っていません。国語英和・和英、英英辞典iPhoneアプリを使います

39. xyzzy のファイラは使いますか?

  毎日仕事に欠かせません。便利にカスタマイズしすぎてむしろファイラだけのために新しく xyzzy 自体を起動することもあります

40. フレームは使いますか?

  あまり使いません。新しく(Windows における)ウィンドウ

41. セッションは使いますか?

  使っていません

42. メーリングリストには参加していますか? また、メール送信したことはありますか?

  ありません

43. 2chxyzzy 関連スレッド書き込みしたことはありますか? また、その頻度はどのらいですか?

  大昔にどうしてもわからないことがあって書き込んだ記憶があります

44. xyzzywikiに書き込みしたことはありますか? また、その頻度はどのくらいですか?

  拡張機能実装に関してちょろっと書き込んだ記憶があります

45. xyzzyメニューは表示していますか?

  たまにほしくなるので表示しています

46. xyzzyツールバーは表示していますか?

  隠しています

47. xyzzyファンクションバーは表示していますか?

  表示していません

48. xyzzyバッファバーは表示していますか?

  表示していません

49. 色、フォントなどは変更していますか? またそれは何ですか?

  色は暗い背景色ハイライトカラーはできるだけ色相を離したパステルカラーです。

  フォントConsolas に源新ゴシック Regular を組み合わせています

50. 最後に、一言お願いします。

  まだまだ xyzzy は不滅です

2018-08-06

値渡ししかないとか勘弁してくれよ

iOS用のプログラム言語としてメジャーになりつつあるswiftは、Objective-Cベースにしているくせに、参照渡しは例外的しか認められず、事実上値渡し推奨である

これ、Javaとかから乗り換えてくると途方もなく面倒だからやめてほしいわ。

C++ベースにしたJavaは、逆にほぼ参照渡ししかない世界なのだから

なんでこんな意味不明言語仕様なのか。

anond:20180806144723

ゆうて増田は今PHPを書く為にPHP勉強をしてからPHPを書いたわけでもあるまい。

最初はCとかC++書いてそれからシフトしたんやろ。みんなそうや。

から、今のプログラミング学習適当言語シフトできるようちゃん設計されてるよ、角度とかがな。

2018-07-31

数値計算問題をいまどきの言語で教わりたい

横軸に言語を並べる。 Fortran, C, C++, Python, Go, Rust, Kotlin, あとなんか好きなもの並べる。

おっさんに対抗するためにFortranとCとPythonは必ず書いておく。

縦軸に数値計算関連のキーワードを並べる。

標準で扱える数値の精度、複素数, 多倍長演算, 特殊関数, 線形代数, 乱数, 高速フーリエ変換, 統計, その他いろいろ。

交差するところにライブラリ名前を書く。標準で持ってるなら標準装備とか○とか書いとく。

という作業を誰か俺の代わりにやってくれるか既にあるなら教えてください。

2018-07-05

anond:20180704191551

C#C++++

二四六九士 → 二四六九十一

こうですかわかりません

2018-06-30

anond:20180628203528

そりゃ、C++とかの方が嬉しいけどさ。

2018-06-28

anond:20180628090843

何か自分自身へ言ってる気がする

苦労してんだな

C++俺は好きだよ?

時代とともに変わるソフトウェア開発の基礎

コンピュータソフトウェアを開発、運用するエンジニアが持つべ知識スキルの基本セットとは何か?

例えばインテルCPUアセンブラが書けます!と言った場合就活で有利になる場面がどれだけ想像できるか。

UMLクラス図書ます!とか、暗号化理論バッチリだぜ!とか、相対性理論なら任せとけ!とかの場合

おうおうおう、だったら弊社のホームページをカッコよくしてくれよみたいな案件無難にこなせるのかというと

甚だ疑問では無いだろうか。

一昔前はソフトウェアハードウェアのおまけだったわけで、ハードウェアこそがエンジニアが抑えるべき基礎だった。

時代は変わり、ソフトウェアでできることはものすごく多くなった。スマホアプリを作るのに組み込み知識がなくても困らない。

からこそ、現代ソフトウェアのみのエンジニアは旧来のコンピュータ関連エンジニアと道を分かたれている事を自覚しなければならない。

自分キャリア自分デザインする必要があるということ。

古いエンジニアの教えに沿えば、自分も古いエンジニアになる。

今の時代の最適解を見つけるのは困難かもしれない。

だけど組み込み系やマイコン制御をしないのであればアセンブラC言語よりも優先して学習することはいくらでもある。

C#C++よりもPHPが優先される場面もある。

html,css,javascript をある程度自在に扱えるようになるのも長期間の訓練による積み重ねが必要になる。

コンピュータサイエンスネタが無いな……これはプログラミングに役立つネタももちろんあって、構造プログラミングオブジェクト指向プログラミングなんかもそうだけど、表層的に関数分けました、クラス分けましたとかしてもうまくいかない。ネストが浅けりゃいいってわけじゃない。プログラミング以外のネタもある。サラリーマン巡回問題とか。

2018-06-24

C#ってC++++ってことだったんか

なんやシャレオツやな

プログラミングを何から始めればいいのか悩む

プログラミングってこれから時代必要っぽいし、なんとなくイケてるスキルっぽい。

ゲームとかアプリとか作ってストアで公開とかしたら就職とか転職めっちゃ有利じゃね?

俺はこういうのが出発点で良いと思う。

でもプログラミングを始めようとすると「何がやりたいの?」と聞かれてソッコー詰まる。

俺は「何をやればいいの?」って思って調べてるつもりなのに「何がやりたいの?」って突き放される。

ここで混乱して立ち止まってしまう。

でも一呼吸おいて、初心者とそれ以外の間に生じる認識の祖語について1つずつ解消しなければ先に進めない。

俺はプログラミングを覚えるということは、何でもできるようになることだと思っている。

でも先人たちはそのようなスキルをすぐに教えてくれない。それどころか「何をやりたいの?」と言って、他につぶしの利かない小さな範囲知識を与えようとしているように見える。

アプリ作りたい」と言えば、どんなアプリ?という問いが続くし、特定の具体的なアプリしか作れないような知識しかもらえないだろう。

どういうことか?

試しに「何でも作れるようになりたい」と言ってみると「じゃあC言語やろうぜ」とか言われる。

C?いまさらCで何作れるんだよ。AndoroidアプリJavaじゃないの?C関係ないでしょ!?Cでスマホアプリウェブサイトも作れないじゃん!何言ってんの!?


スマホアプリ作りたいの?じゃあJavaでいいじゃん」

ち・が・う!何でも作れるようになりたいの!あんたみたいに!Visual Studioだろうとgccだろうと、cとかc++とかc#とかjavaとかpythonとかrubyとかphpとかテンサーフローとかhtmlとかjavascriptとかjqueryとかgoとか駆使してたくさんウェブサービスとかアプリとか作りまくってるあんたみたいに!

「じゃあ今挙げたやつ全部やれよ。ちなみに今の俺は10年以上プログラミング勉強してるから。10年後今の俺になったところで、俺はさらに10年積んでるからな。一生追い付かんな」


から今すぐ追いつく方法教えてって言ってるの!


「じゃあ今、あるいはこれから使えるものを重点的にやっていくしかないな。で、何がやりたいの?」


何がやりたいのってどういうこと?むしろ何ができるの?


アプリ作るとか」

わかった!じゃあアプリ作るわ!

「どんなアプリ作るの?」

…………どんなアプリ作れるの?

「ストアにあるようなやつ」

じゃあFGOみたいな……

「お前には無理だからw」


はぁっ!?ストアにあるようなやつって言ったじゃん!






そこでまた数回やりとりが発生して、プログラムを書くコストとかスキル問題について再確認することとなり、

現実的に俺個人が支払えるコスト範囲で、何を作れるようなスキルを取捨選択するかという問題になり、

結局は教科書サンプルをちまちま作っていくしかないのではないかというつまらない結論脳裏に浮かぶし、

その道筋でさえ結局何年も積む必要があり、そのころには別の言語とか開発環境が主流になってるかも……

「そこだよそこ」

えっ?


「まずさ、日本語教科書を読むには日本語必要じゃん?それでも国語辞典とかwikipedia調べながら知らない単語概念は別途補てんする必要がある」

う、うん。

プログラミング教科書とか風潮を読むにはプログラミングの基礎が必要。それに加えて、作りたいものに合わせて新規に開発環境なり言語なりを学習することになる。だから何でも作れるようになりたけりゃ、この世の全てを体得する必要があるけど無理だろそんなの」

え、えー

「でもいくつもの開発環境言語を使って、ソフトウェアをいくつも実際に作ってると、基礎的な引き出しは大きくなるし、追加で新しい環境とかを学習する要領もつかめてくる。何年も積み重ねがあるとなおさらね。するとより少ない労力で新しい技術追従できるし、新しい開発環境アプリの分野でもサクサク作ってるように見える。それが、お前の言うところの『何でも作れる』ように見えるものの正体さ」

なんか夢から覚めた気分。

FGOを作りたいなら、FGOをかみ砕いて、自分ならどういうアレンジでそれっぽいものを作れるか考えて、その過程自分能力とか限界を見極めていく必要がある。でもそれは結果論であって、最初は作りたいものをひたすら作ってみるしかない」

ふーん

「何度も聞くけど、何が作りたいの?FGOならFGOでいいよ。やってみろよ」

どうしよっかな……(頭を抱える)

2018-06-13

anond:20180613182842

とりあえずみんな一律でPythonやって情報コースいく連中だけC++も必修にしとけば良いと思う

2018-06-12

anond:20180612160245

VB C# Java Scala Kotlin...

C++ ObjectiveC D Swift ...

ココらへん似たような言語多すぎてよくわからん

2018-06-08

anond:20180607174936

C++だけど、+は記号から近い文字のxにしたってことか・・

2018-06-06

anond:20180606190044

いや、マジで、、 JavaC++も何も知らんので、、 言葉を聞いたことがあるだけで、 これからですんで、 (汗

アーカイブ ヘルプ
ログイン ユーザー登録
ようこそ ゲスト さん