お知らせ
「こじましっているか」は移転しました

URL:http://blog.livedoor.jp/kojimashitteiruka/
RSS:http://blog.livedoor.jp/kojimashitteiruka/index.rdf

ブックマーク、RSSの変更をお願いします


2015/7/19

スポンサーサイト

  • このエントリーをはてなブックマークに追加
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

プログラミング言語の解説をする

  • このエントリーをはてなブックマークに追加

http://hayabusa.open2ch.net/test/read.cgi/news4vip/1429348010/


1 :名無しさん@おーぷん:2015/04/18(土)18:06:50 ID:uO0
プログラミング言語の解説をする
http://hayabusa.open2ch.net/test/read.cgi/news4vip/1429229808/
このスレがクソ適当なので本当のことを伝えたい


2 :名無しさん@おーぷん :2015/04/18(土)18:08:14 ID:F0j
工業高校ではc++とJavaしか使わんかったな


4 :名無しさん@おーぷん :2015/04/18(土)18:09:37 ID:C1o
期待


5 :名無しさん@おーぷん :2015/04/18(土)18:10:14 ID:WvW
37歳の知識ゼロやけどJavaとかいうのから始めたらええんか?


7 :名無しさん@おーぷん :2015/04/18(土)18:11:36 ID:UkO
>>5
何をやりたいかによる


8 :名無しさん@おーぷん :2015/04/18(土)18:13:58 ID:WvW
>>7
その質問の答えに窮する
別にこれといってやりたいというのはないけど何かやりたいねん
これはやっといて損はないぞ的な取っ掛かりが欲しいねん


10 :名無しさん@おーぷん :2015/04/18(土)18:18:16 ID:UkO
>>8
おおまかに言ってもゲームを作りたいとか、Webサイトを作りたいとかないのか?
そういう目的が無いのなら多分モチベが続かないから厳しい


11 :名無しさん@おーぷん :2015/04/18(土)18:20:35 ID:TaS
>>8
pythonとかのスクリプト系をやっとけばいいんじゃね


64 :名無しさん@おーぷん :2015/04/18(土)22:33:30 ID:WvW
>>10
そっか(´・ω・`)
色々考えてみる

>>11
ありがとう
調べてみる


61 :名無しさん@おーぷん :2015/04/18(土)21:44:25 ID:gdg
Scala, Go Haskell とかはどうですか?

HadoopのつぎにSparkだかが来るとかいう話を見かけて
Scalaで実装って話だったので勉強しようかと思ったんだけど
平たく言ってそもそも、関数型言語にびびってたり


6 :◆Eefzw8GqBpVo :2015/04/18(土)18:10:25 ID:Vq1
javascript勉強したいので期待


9 :名無しさん@おーぷん :2015/04/18(土)18:16:44 ID:WYn
>>1
あのスレは確かに糞テキトーだったけど
あえて暖かい目で見てた


12 :名無しさん@おーぷん :2015/04/18(土)18:20:51 ID:uO0
じゃあC++とJavaから

C++:
Cの拡張言語
Cにオブジェクト指向プログラミング支援機能をつけた言語と一般的に認識されているけど、
この「C++のオブジェクト指向プログラミング」が曲者で、アラン・ケイが提唱した「オブジェクト指向」とはかなり異なる
速度はC並で表現力が高いが、学習コストもかなり高いうえに現場の知識がC++98という古い規格で止まっていることが多い
(最新の標準化された規格はC++14)

Java:
「C++のオブジェクト指向プログラミング」が可能な言語
最大の特徴はJVMと呼ばれる仮想機械(バーチャルマシン)上で動作するため、
(理論上は)CPUに依存しないプログラミングが可能なことだが、そのせいで動作速度はどうしてもC/C++に劣る
まあよっぽどクリティカルでなければ気にするほどではない


13 :名無しさん@おーぷん :2015/04/18(土)18:25:20 ID:D2z
期待


14 :名無しさん@おーぷん :2015/04/18(土)18:26:36 ID:uO0
とりあえず名前が挙がった順に解説してく

JavaScript:
基本的にはブラウザ上で動作する言語
もともとNetscape Navigator(Firefoxのご先祖様)が独自に実装したクソ言語扱いだったが、
webページに動きを加えられる=自由度が格段に増すため急激に普及した
ただしブラウザごとに細かい実装が異なるためECMAScriptとして標準化されている
オブジェクト指向プログラミング機能がプロトタイプベースというそこそこめずらしい(C++やJavaはクラスベースと呼ばれる)


15 :名無しさん@おーぷん :2015/04/18(土)18:29:02 ID:Q9w
C#とLispの解説も頼む


16 :名無しさん@おーぷん :2015/04/18(土)18:32:18 ID:uO0
Python:
もう中堅の部類に入るスクリプト言語
インデント(ソースコードを読みやすくするための空白)でブロック(処理のまとまり)を制御するため、
初心者が書いてもそこそこ読みやすいコードになる
読みやすさは生産性の高さにつながり、フォルダ内のファイル名をパターンにそってリネームするといった小規模なものから、
webアプリといった大規模なものまでそつなくこなせる


17 :◆Eefzw8GqBpVo :2015/04/18(土)18:33:24 ID:Vq1
PHPもくらさい


18 :名無しさん@おーぷん :2015/04/18(土)18:36:49 ID:uO0
C#:
マイクロソフト製の言語
一応C/C++/Javaといった言語の系譜に連なる言語だが、
実体はDelphiという別の言語をC/C++/Java「っぽく」書けるようにした言語
個人的にはWindowsでプログラミングをしたいならC#が最強だと思っている
Javaと同じように仮想機械上で動作し、一応はマイクロソフト製だからといってWindowsだけがターゲットではない


19 :名無しさん@おーぷん :2015/04/18(土)18:41:40 ID:uO0
LISP:
歴史的にはかなり古く、シンプルな言語
プログラムをリスト(数字やデータの並び)で捉えて処理していくため、CやC++などとはかなり異なる雰囲気をもつ
見た目が括弧ばっかりになるので慣れないと読みにくいが、複雑な処理をシンプルに表現する喜びを覚えると病みつきになってしまう
はやりの関数型プログラミング言語の祖のような存在


20 :名無しさん@おーぷん :2015/04/18(土)18:42:17 ID:YyQ
ためになる


21 :名無しさん@おーぷん :2015/04/18(土)18:43:14 ID:UkO
Objective-CとSwiftについても希望


24 :名無しさん@おーぷん :2015/04/18(土)18:44:48 ID:yYU
VBAも言語だよな。


25 :煉獄のちくわパフェ◆zTu6/Mt3jg :2015/04/18(土)18:46:36 ID:FAE
>>24
で?


27 :名無しさん@おーぷん :2015/04/18(土)18:53:52 ID:yYU
>>25
世間じゃプログラミング言語扱いされてませんが何か?

あーうー><


30 :煉獄のちくわパフェ◆zTu6/Mt3jg :2015/04/18(土)18:58:13 ID:FAE
>>27
世間が何を指すのかも言わないのか
少なくとも日経パソコン事典だかでは言語として載ってたぞ


35 :名無しさん@おーぷん :2015/04/18(土)19:03:47 ID:yYU
>>30
日経BPは……

でもありがとう


26 :名無しさん@おーぷん :2015/04/18(土)18:49:29 ID:uO0
PHP:
もともとはHTML生成に特化した言語
現在ではwebプログラマにとってJavaScriptと並んで必須の言語で、こちらはサーバサイドを担当する
見た目の雰囲気はC/C++によく似ているが、型システムや配列の扱いなどに独特な部分も多く、
どちらかというとJavaScriptに近い


28 :名無しさん@おーぷん :2015/04/18(土)18:54:07 ID:D2z
rubyもおね


29 :名無しさん@おーぷん :2015/04/18(土)18:55:47 ID:gYc
Perlも一応お願いします


31 :名無しさん@おーぷん :2015/04/18(土)18:59:26 ID:uO0
Objective-C:
C++とは異なる哲学でCにオブジェクト指向プログラミング機能を追加した言語
Smalltalkという「本来のオブジェクト指向プログラミング」を体現した言語にも連なり、
個人的にはC++よりもこちらのほうが「オブジェクト指向とはなにか」を説明しやすい
後述のSwiftが登場するまでは、ほぼ唯一のOS X/iOS向けアプリ開発言語だった

Swift:
2014年登場のかなり新しい言語
発表の際に「Objective-C without the C」(Cを取り除いたObjective-C)と題されたように、
Objective-Cにあった冗長性や古臭さをできるだけ取り除いて、最新のトレンド(関数型プログラミングなど)も追加した言語になっている
ただし(今のところ)オープンソース化されていないのでコンパイルも動作もOS X/iOSのみ


32 :名無しさん@おーぷん :2015/04/18(土)19:00:01 ID:yYU
FORTHという謎言語。

ハード寄りで良さげだけどレベル高すぎて追いつけなかった(´・ω・`) ショボーン


36 :名無しさん@おーぷん :2015/04/18(土)19:08:15 ID:uO0
VBAは汎用プログラミング言語じゃないので軽く触れる程度にしておく

VBA:
Visual Basic for Applications
Visual Basicという(一応)BASIC言語の派生言語でマイクロソフト製のアプリを操作するための言語
基本的にエクセルでしか使わない

Ruby:
日本製のスクリプト言語
日本製ということで日本語のドキュメントやコミュニティ数が豊富、国際標準化もされたので、
現在はPythonと二大スクリプト言語となった
Perlの後継言語的な用途が多いが、見た目や使用感はかなり異なる


38 :名無しさん@おーぷん :2015/04/18(土)19:10:58 ID:y5C
>>1 1がプログラムできる言語を、全部列挙せよ。 


43 :名無しさん@おーぷん :2015/04/18(土)19:24:17 ID:uO0
>>38
C
C++
C#
Java
Scala
Haskell
Objective-C
Swift
Kotlin
Python
Ruby
Rust


46 :名無しさん@おーぷん :2015/04/18(土)19:32:34 ID:vn1
>>43
解説が終わったら実力を見せて欲しいな

↓のスレに無い言語で素数をリストアップ

【悲報】ワイ氏、プログラミング課題で晒される
http://hayabusa.open2ch.net/test/read.cgi/news4vip/1420941607/


40 :名無しさん@おーぷん :2015/04/18(土)19:14:42 ID:yYU
BASICがないあたりスレ主10~20代前半とみた


41 :名無しさん@おーぷん :2015/04/18(土)19:16:24 ID:qvd
オブジェクト指向ってのがそもそもわからんのだが・・・


42 :名無しさん@おーぷん :2015/04/18(土)19:18:33 ID:uO0
Forth:
スタック指向、逆ポーランド記法を採用した一見すると一発ギャグのような言語
その実、ハードウェアの仕組みに近いシンプルな記述が可能なため、組み込みシステムに一定の需要がある
まあ日本でプログラマをやっているとまずお目にかからない

BASIC:
名前に「初心者向け」と入るほどわかりやすくシンプルに作られた言語
初心者向けだが汎用言語なので一応はどんなプログラムも書ける
その昔、「パソコン」といえば「BASICでプログラムが書けるコンピュータ」を意味したほど普及していた
古い言語だけあって方言が多く、最初期のBASICと最新のVisual Basicでは見た目も機能もかなり異なる


43 :名無しさん@おーぷん :2015/04/18(土)19:24:17 ID:uO0
Brainfuck:
名前のとおり書いていると脳が犯されるような感覚に陥る言語
<>+-.,[]の8文字だけでプログラムを記述する
やっていることはメモリの操作そのもので、brainfuckを完璧に理解するには、
コンピュータの物理的・理論的なしくみに対しての深い理解が必要


44 :名無しさん@おーぷん :2015/04/18(土)19:29:27 ID:uO0
Perl飛ばしてた

Perl:
一昔前はスクリプト言語でもっとも人気があった
CGI(webページのアクセスカウンタや掲示板を作るしくみ)といえばPerlだったし、
ファイル内の文字列を処理するのにもPerlを書いていた
しかしいつの間にかPHPやPython, Rubyにとって変わられ、今ではあまり学習者もいない
Perl 6という規格があるが、こちらは5.xまでとはまったく互換性がない別物


45 :名無しさん@おーぷん :2015/04/18(土)19:29:47 ID:LN6
>>1
いや、お前の知識もかなり偏ってて怪しいよw


47 :名無しさん@おーぷん :2015/04/18(土)19:33:03 ID:uO0
>>45
書いててわかったけど、簡単に説明しようとするとどうしても足りない部分が出てきてしまう


52 :名無しさん@おーぷん :2015/04/18(土)19:37:55 ID:y5C
>>1

C++ を例題に使って、OOPについて、具体的に実例を使って解説してくれ。


57 :名無しさん@おーぷん :2015/04/18(土)19:48:53 ID:uO0
>>52
「最初のOOP」の核となる概念は「オブジェクト同士がメッセージを送りあう」の一言で、
上で書いてる「C++のOOP」とはかなり異なるのを前提として具体例を挙げると

#include

struct Foo { // Foo型のオブジェクト

void say(std::string message) {
std::cout << message << std::endl;
}

}

int main() {
Foo foo; // オブジェクトの実体(インスタンス)をつくる
foo.say("hello"); // sayというメッセージを"hello"という文字列と共に送る
}

OOPのキーワードにはカプセル化や多態性などがあるけども、これが一番シンプルなOOPのコード


62 :竜◆CYrvU9cCbE :2015/04/18(土)22:00:11 ID:Nd1
流行りのビッグデータを扱う予定で
今から覚えるならpythonが一般的だね
(´・ω・`)y-~


63 :名無しさん@おーぷん :2015/04/18(土)22:26:59 ID:gdg
なるほど、pythonですか


66 :名無しさん@おーぷん :2015/04/18(土)22:38:47 ID:cs9
最近はなんやかんやでpythonが頭ひとつ抜けてるよな
器用貧乏な感は否めないが

関連記事

コメント

コメントの投稿

検索フォーム

Twitter

おーぷん2ちゃんねる

タグ

社会(246)
生活(224)
文化(186)
画像(162)
恐怖(111)
日本史(107)
科学(104)
歴史(101)
議論(98)
面白(93)
倫理(93)
世界史(84)
その他(82)
生物(76)
食べ物(64)
空想(57)
雑学(49)
オカルト(48)
漫画(48)
事件(46)
アニメ(43)
ゲーム(42)
宗教(42)
芸能(38)
昔の話(38)
政経(32)
スポーツ(32)
心身(28)
お金(28)
哲学(27)
工学(26)
数学(25)
文学(24)
軍事(24)
動物(23)
問題(18)
芸術(13)
企業(9)
音楽(9)
心理(8)
法律(7)
医学(7)
宇宙(6)
教育(6)
映画(6)
旅行(6)
健康(5)
地理(4)
名言(4)
地学(4)
昆虫(4)
政治(3)
物理(2)
経済(2)
国語(2)
物語(2)
動画(1)
デザイン(1)
ストーリー(1)
疑問(1)
学歴(1)
男女(1)

QRコード

QR

アクセスランキング


人気ブログランキングへ
にほんブログ村 その他日記ブログへ
にほんブログ村

スポンサードリンク

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。