はてなキーワード: メソッドとは
プログラマじゃないけどプログラミング完全に理解した()おばさんが理解してる基礎知識書くよ。
(追記 この文章はプログラミングの勉強をしたいけどその周辺にある基礎知識になかなか触れる機会がない人向けに書きました。これらの基礎知識があると、困ったときに調べ方すら分からないという状況は回避しやすくなるはず)
ターミナル、いわゆる黒い窓からCUI(コマンドユーザーインターフェース)でコンピュータを使う方法を覚えよう。これは大学のコンピュータリテラシーで習った。MacOSXで復習すると捗った。(追記 すごく間が抜けてたけどMacOSXはUnix系OSです)
まずはファイル操作。Macでターミナルを使って、cd Desktopって打ってからecho ohayou > aisatsu.txtって打ってみて、cat aisatsu.txtってやる。そうすると何が表示されるのか?とりあえずやってみよう。ここで>は増田の都合上大文字全角にしてるけど、ちゃんと半角にしてね。なんで増田の都合上半角がダメなのか、そのうち想像できるようになろう。(追記 ブコメ指摘感謝)
そして、実際にデスクトップを見に行ってみると、aisatsu.txtってファイルがあるはずなんで、開いてみよう。これで何が起こったのか7割くらいはわかるはず。
こういうファイル操作の基本をまず覚えよう。これこそ空気みたいなものだから。
(追記 ここも間が抜けてたけど確かにhogeって何かわからないね。直しました)
最近は何も考えなければ文字コードはとりあえずUTF-8でなんとでもなるようになってるけど、バックスラッシュとかは環境設定で出てくるように設定しないと出てこないし、その意味合い、つまりエスケープとしての使い方を頭に入れておくと後々困らないと思う。あとEOF(エンドオブファイル)とか改行コードとかもそういうものがあるよ程度には覚えておこう。これ頭の片隅にはいってないと分からん殺し的な罠にはまることがある。
これは使いたいプログラミング言語の公式サイトに行くと大抵書いてある。
でもMacだとだいぶ楽。とりあえずターミナルからgccって打ってみるとなんかCUIツールとか書いてあるものをインストールしろって言われるのでインストールする。これだけでCとかC++とかRubyとかPythonとか一通り使えるようになる。もしかしたら最近はこのインストールすらいらないかもしれないけど。
あと、シェルのコマンドとかプログラミング言語を実際に使うときはいろんなライブラリをインストールする必要があるけど、そのライブラリは管理がすごく面倒なので管理をまとめてくれるコマンドがあったりする。aptとかhomebrewとかがそういうのだから、そんなものの使い方も覚えておこう。
(追記 言語の文法を追うだけなら環境構築なんてしなくてCloud9とか使ってもいいかもだけど、プロダクトを作ろうとした時にはまだまだ手元で環境作って必要なライブラリを入れてとやった方が後々応用がきくと思うのですよ。それにそうしていくとDockerの有り難みなんかも理解できるようになっていくのではと思います)
最初に勉強するプログラミング言語は、Javaだけはやめておけ。
なんでかっていうと、Javaはオブジェクト指向言語ってやつなんだけどオブジェクト指向的にしか書けないから。古い人間だと言われそうだけど、最初は手続き型言語から始めるべきだと思ってる。少なくとも、手続き型的に書ける言語から始めるべき。
なぜそう思うのかも含めて、とりあえずおばさんが理解しているプログラミング言語の発展の経緯を軽く解説する。
最初の頃のプログラミング言語は、手続き型と呼ばれるものが多かった。
この〇〇型ってのはプログラミングをするときの考え方によって名前がついているんだけど、手続き型はまず0を作って、0に1を100回足して、最後にその結果を表示してください、みたいな、上から書いた順番通りに動くのが基本のルールである考え方。プログラムは基本的にはこうやってデータをアルゴリズムを使って変化させていって望む結果を得ている。でもこのやり方は問題も多かった。プログラム全体がひとかたまりになってしまっているので、数千行とかになるともう普通の人では手がつけられないし、人間のミスでデータを間違って扱ってしまうことがバグの温床になった。
なので、この手続き型の考えに構造化という考えが加わって、関数というものが生まれた。関数っていうのは料理のレシピに例えるとわかりやすいかも。
5:豚こまを入れて色が変わるまで炒めます。
9:火を消して8をお皿に盛り、野菜炒めの出来上がりです。
B:肉に味付けをします。
2:Bを入れて色が変わるまで炒めます。
3:Aを入れてしんなりするまで炒めます。
4:火を消して3をお皿に盛り、野菜炒めの出来上がりです。
って書ける。ここではAとBが関数。
この程度だとあまり意味を感じないかもしれないけど、これがもっと複雑なものを想像してみると、なんとなくありがたみが分かって来ないだろうか?こうすると、多人数でプログラミングをするときに、Aを書く人、Bを書く人、1〜4にまとめる人って感じで作業分担ができる。それに、バグが起きた時もAの領域でバグったのか、Bの領域でバグったのかとか、全体にまとめると上手くいかないのかとか、原因の切り分けがしやすい。
でも、プログラムがとっても複雑化すると、これでも手に負えなくなる。料理の例えを拡大すると、料理店を運営することを考えるといいかも。
料理店でたくさんの料理をさばくときに、レシピを完全に1から作ることってないと思う。Aさんが野菜の仕込み担当、Bさんがスープの仕込み担当、というように各人に仕事が割り振られているはず。AさんもBさんもそれぞれの仕込みのレシピを持っていて、最終的に出てくる仕込みがちゃんとしてればAさんBさんの仕事の詳細までいちいちシェフが細かくチェックしない体制になっていると思う。大雑把にいうとそういう考え方をプログラムで再現したのがオブジェクト指向型言語。
なので、本気で料理の初心者がいきなり厨房の仕切りを任されて上手くいくのは難しいように、構造化プログラミングのありがたみすらわからない段階でオブジェクト指向型プログラミングに手をつけても意味がわからんだろうと思うのがおばさんの立場です。
(追記 おばさんはRubyを勧めておきます。オブジェクト指向型言語ですが、手続き型的に書き下すことも出来るからです。一つの言語で手続き型構造化オブジェクト指向、全部勉強できます。メソッドも便利なのが一通りあるし、日本語を扱うのにも問題が少ないです)
次に問題を分解できるようになろう。
例えば、クイズゲームを作りたいと考えたときにクイズゲームを作りたいです、って問題は大きすぎる。
クイズゲームに必要な要素は、問題文を表示する、回答を入力してもらう、正誤判定をする、正誤判定の結果を表示する、ということだなぐらいにまず分解する。
これを実際にプログラミングしようとすると、もっと分解できてさらに問題が見えてくると思う。
コンピュータってのは創造的なことはできない代わりに、とても簡単なことをとても階層的に重ね合わせて大きな問題を解けるように作られてる。それを心するといいと思う。
これ超大事。プログラミングって本当に自分で1からものを考えなきゃいけないことってあまりない。大きな問題はあなただけの問題かもしれないけれど、それを構成する小さな問題は大抵他の誰かが解いている問題なので、調べてみれば答えが見つかると思う。
エラーメッセージが出てきたらまずググってみる。翻訳しても初心者には意味がわからないし、ググったら誰かが解説付きで紹介してくれているのでその解説を読んだりしながらエラーメッセージとの付き合い方を覚えていけばいい。
メソッドの使い方がわからなかったら言語の公式サイトに行ってみる。メソッドの使い方で大事なのは呼び出し方、返ってくる値の型とかそういうのだから、こういうところはググるよりも公式サイトに書いてあることをしっかり読んで理解する。
あと、アルゴリズムの勉強もしてみるといいと思う。アルゴリズムとデータ構造と計算量の勉強。大学の学部レベルの教科書をちゃんと読んでみると、例えばデータベースを操作するSQLというものを書くことになった時とかに効いてくる。あとは作ったプログラムが遅すぎてどうしようとかいうのを解決する時とか。
なんか深夜までいろいろ書いてしまったけど、あくまでもプログラマじゃないおばさんが書いたものなので、みんなでツッコミとか入れてくれると大変助かります。
たまに増田のブコメで「書いた」と1ブコメして名乗る慣習について。
その増田内でブクマカのID等載せてない場合は本人と断定できないので成りすましという悪質行為の可能性もある。
今見つけたのでいえばこれ
https://anond.hatelabo.jp/20190401153412
http://b.hatena.ne.jp/entry/4666712173767942594/comment/casm
増田URLより15時34分12秒に投稿。ブクマは個別ページより15時36分??秒に投稿。
2分も間があればキチ増田による成りすましの可能性も否定できない。増田ブクマ時間差で厳密に本人認定する場合は1分未満にブコメすることが必要だろう。
ブコメで名乗るバカは少なくとも1分59秒以内にブコメしなさい。
「casm "成りすましという悪質行為の可能性もある"別にまぁ,そう思ってても良いですよ。言うて元記事の投稿者がcasmとかいう奴だと確認取れたとして,信頼度が上がるわけじゃ無いでしょ? 」
そもそも増田本人名乗ブコメなんかすんなボケ。やるなら構造上変化はないが成りすましを防止できる時間差メソッド使えつってんだよハゲ
「pandaporn 「書いてない」のファーストブコメ、さすが。正解突きつけられたわ」
こいつの指摘で気付いたけど1ブコメ「2019/04/01 17:08」ってことは1分28秒以内やんけ!!やるぅー!!
http://b.hatena.ne.jp/entry/4666715119043711394/comment/megane1972
やっぱキチ増田って空想の存在ではなくガチで存在するわけで1分59秒以内じゃ全然本人証明にはならねぇし増田も捨てたもんじゃねぇな
私がmegane1972ではないと証明する方法が思いつかなくて逆に困ってるくらいだ
キチ増田の登場で無茶苦茶興奮してるんだが、よく考えたらmegane1972が自演ではないのが分かるのは私とmegane1972だけであって、私とmegane1972以外はmegane1972のスター稼ぎ目的の自演の線を十分に感じて大して興奮してないのか
自分ではないのに多くのオーディエンスには恐らくあいつを自分として認識されてて悔しい
これが成りすましを喰らった奴の気分なんだろうか
キチ増田の登場に興奮を感じながらも率直にかなり酷く悔しい
栄養価 | 保存性 | 汎用性 | 調理容易性 | 入手容易性 | 経済性 |
B | B | C | B | A | A |
栄養価 | 保存性 | 汎用性 | 調理容易性 | 入手容易性 | 経済性 |
A | C | A | B | A | B |
栄養価 | 保存性 | 汎用性 | 調理容易性 | 入手容易性 | 経済性 |
D | A | B | C | A | A |
栄養価 | 保存性 | 汎用性 | 調理容易性 | 入手容易性 | 経済性 | |
生 | B | D | D | A | B | C |
水煮缶 | B | A | C | B | B | A |
ペースト | C | A | C | A | D | B |
栄養価 | 保存性 | 汎用性 | 調理容易性 | 入手容易性 | 経済性 | |
生 | A | D | A | C | B | C |
冷凍 | A | A | B | B | D | B |
栄養価 | 保存性 | 汎用性 | 調理容易性 | 入手容易性 | 経済性 | |
緑 | B | C | C | B | A | C |
赤 | A | D | C | B | D | C |
栄養価 | 保存性 | 汎用性 | 調理容易性 | 入手容易性 | 経済性 |
C | E | D | B | A | A |
栄養価 | 保存性 | 汎用性 | 調理容易性 | 入手容易性 | 経済性 |
B | B | D | D | A | B |
栄養価 | 保存性 | 汎用性 | 調理容易性 | 入手容易性 | 経済性 | |
塊根 | D | B | D | C | B | B |
葉 | A | D | D | B | E | A |
栄養価 | 保存性 | 汎用性 | 調理容易性 | 入手容易性 | 経済性 | |
玉レタス | D | D | D | A | B | D |
グリーンリーフ | B | D | D | A | C | D |
栄養価 | 保存性 | 汎用性 | 調理容易性 | 入手容易性 | 経済性 |
A | C | E | E | B | C |
栄養価 | 保存性 | 汎用性 | 調理容易性 | 入手容易性 | 経済性 |
D | D | B | A | A | C |
バシーン・メイナキ・メソッド
ぐで垣結衣ちゃん級にもう何もしたくない感じで帰ったらばたんきゅーだわ。
ぎりぎり面倒くさくないお湯を沸かすことさえも面倒くさい。
でもやっぱりお腹空いてるじゃない、
かろうじてストックのある袋ラーメンすらも作る気力なくめんどくささ満載でお送りするこの深夜いかがおすごしでしょうか?みたいな!
雪平鍋を構えてバッターボックスに立ち、
その店の一番最速のピッチングマシーンから放り投げられた時速190キロメートルの剛速球を
雪平鍋で、しかも雪平鍋でよ、
カッキーンってアルプススタンドにお見舞いする元気や気力すらもなく、
すでに雪平鍋を出してくるのも面倒くさいわ。
そんな面倒くさい最中、
食べる前に飲む!か否かそれは大正漢方胃腸薬のことじゃなくて、
やっぱりどうしてもプシュっとキメたい缶ビール。
1本だけにしちゃおうと思ったら、
私最近分かったんだけど、
これってなんか焼酎甲と乙の違いなのよね?
どちらがどっちか分からないけど、
本格焼酎とかってのが乙?
家でもやし山盛り茹でて盛ってのせればお家二郎できそうなんだけど、
もやしじゃないのよ涙はハッハーンって
というかお店が近くにないのよね。
まあそんなわけで飲んでも頭痛くないストロング酒避けをしてるのよ。
だから最近よくアルコール度数の表示をしっかり見るようにしてるわ。
よく分かんないけど6パーセントを超えないようにってのが目安ね!
そんなのんべーな話はどうでもいいのよ。
要はほどほどにって事よね自重するわ。
大五郎系よりもミリンを焼酎で割って飲む方がゼノンのパラドックスばりに何か人としてミリンだけにミリ単位で終わりに近づいてる感じがするけど、
やってみたい気もするわ。
うふふ。
草餅2つ頂いたので食べきれなかったから朝ご飯に回しちゃいました。
緑のお餅って私好きなのよねー。
すいすいすいようび~
今日も頑張りましょう!
法に反しない範囲で可能な限り事実を捻じ曲げ身内を守り無謬性を保つというのは霞が関メソッドそのもの。
大臣の問題に限らずあらゆる不正と疑惑をこのメソッドで乗り切ってるし、内閣人事局の発足で官邸がダメ出ししない限り官僚自身も責任を取る必要がなくなった。
内閣人事局により表面的には官僚主導から政治主導になったとされるが、与党議員と官僚が一体化することでより強力な権力を持つようになったというのが実際のところ。
野党の追求が中央省庁の役人にすら及ばなくなったのは、決して野党が不甲斐ないからではなくこうした背景が強い要因になっている。
現政権の正体が全体主義・適者生存・弱者切り捨て型の自由主義経済を志向する一部の政・官・民の複合体だと考えればごく自然な振る舞いといえる。