「順次」を含む日記 RSS

はてなキーワード: 順次とは

2019-03-11

anond:20190311172905

警察だって順次対応」していくんだから

そういう悪事働いた奴だって順次対応」だろ。

悪いことしているのが馬鹿なのに。

何を言ったところで悪事を働いたことに変わりない。

2019-02-19

anond:20190219171914

流石に飛び過ぎな気がするけど、基本は「それはそれ、これはこれ」やぞ。

悪質な広告facebookcoinhiveも同様にジャスティスしていくのが司法やぞ。

一斉同時にはなかなか出来ないのでサイコロ振って順次仕事してんだよ。

2019-01-22

社会人デビューしたけど向いてなかった

何年か前に新卒採用をもらってサラリーマンになったのだが、向いていなかったと判断したので今夜上司辞表を出すことを連絡しようと思う。実名ブログに赤裸々に書くと親が哀しむのでここに書く。

理由は「いい加減睡眠時間生活にケリをつけて休みたい」とか「思ったより金がない」とか「掲示板で論争がヒートアップしたあと明け方までバトルを続けられる生活に戻りたい」とかもあるのだが、根本は「生きていくのは好きだけど仕事をするために生きるのは好きじゃない」ということに尽きる。

俺は自分の部屋に閉じこもるのが好きで、子供のころから股間を掻いていた。小説だったり漫画だったり、RPGツクール製のでリョナゲーでシコったり形態は様々だ。シコり終わったらウェブを回ったり友達スカイプしたりはしていたが、特に勉強をするつもりもなく、余った時間は寝ていた。そんなある日、気まぐれに新卒採用にでも送ってみようかと考えて就活した結果、まさか内定獲得。いつの間にか社会人になっていた。

その後卒論を書いたものが幸い卒業になり、嬉しいようなものもあれば嬉しくないものもありという感じで生きてきたのだが、最近自分限界を感じるというか、会社に向かうのが本当に苦痛になってきてしまった。

社会人デビューすると、学生のように自由に生きることはできない。億り人スーパーハカーくらいの大御所になれば生きたい人生を生きたいように生きれるのかもしれないが(でも億り人市場の変動にはやきもきすると言っていたっけ)、俺クラス新卒だとそうはいかない。こちらが非常識と思ったもの強要されることもあるし、ときにはまるで違う報告書魔改造されることもある。こちらが全く誠実と思えない上司方便を入れないと判子を押さないと言われることもあるし、そうやって無理やり通したたものが無事にすめばまだいいが、本社による調査で二週間詰められたりりする。もちろん嘘を交えての問題先送りはサヴァイヴにて必要プロセスだし、正直に書いたもの承認を通らないのは俺の実力不足のせいだが、一方でこういう生活を続けていて社会人を続けていく理由がよくわからなくなってきた。

よくビジネスマン向けの自己啓発として「お前は仕事がしたいのか、給料が貰いたいのか」というものがあり、「仕事がしたい」人のほうが社会に向いていると言われるが、俺は逆だと思う。「給料をもらいたい、社会的地位を手に入れたい」という人のほうが、社会人をするにははるかに向いている。彼らは上司意見をきちんと取り入れ、報告内容を忖度し、顧客との接待飲みすらエンジョイし、貪欲に生き残り続ける。そうやっているうちに強固な人脈を持つ社会人に化けたりする。俺のように「自己実現をしたい」だけの人間はそういうモチベーションがないので、自分が正しくないと感じる方向に改竄をしてまで資料を出すという動機がない。やりたい事をやって生きていられればいいのだがこれは天才戦略で、凡人がやると居場所を失って死ぬ。そしてただの凡人だった俺は、社会人として死ぬのだ。

というわけでこれから上司順次連絡してこのエントリを見せようと思う。これからネトゲにでも一日の大半を使って、だらだら貯金を使い尽くして死のうと思う。両親には謝りたい

元ネタ

https://anond.hatelabo.jp/20190122141644

追記したよ  人は悩む、人は学ぶ、でもダウン症はみんな堕しているから私も。※1

https://headlines.yahoo.co.jp/hl?a=20190120-00010000-yomidr-sctch

この記事についてるトップブコメ

地獄への道を善意で敷き詰めるナチが集っており、酷く嫌悪感を覚えたため当事者として筆を取りました。

先に結論だけ書くとダウン症理由中絶しなければならない世間を産んでいるのは

「一生支援できない人は、他人のこの種の決断に口出ししないでほしい。」

などとのたまう人達、君らだよ

おわり

さて、この問題当事者として言わせてもらうが「障害者は殺せ!」と声高に叫ぶ人の方がまだマシです。

今の時代はこの手の手合いはなぐり返しやすい、そりゃ理想を言えば0人になってほしいけどさ、そういう人いなくならないでしょ。

無視するなり、黙らせるなり、距離を置くなり、説得するなりできる。

しろね、最高に悪辣なのって、私は理解者ですよ、といった顔で障害者の淘汰に加担してる偽善者

つの時代もお前らが一番数多くの人間を不幸に陥れてる

あのなあ、一生支援できる人なんていねえよバーーーーーーーーーーーーーーーーーーーーーカ

もう本当にバカすぎる、バカ選手権があったら、優勝候補だよ、それは寿命のある個人でやることではなく、寿命のない国や行政法人しかできない事だよ。

そして国や自治体法人でやるためには、数が必要なんだよ、障害者の数が。

それなのに、障害を抱えているから〜、そんな理由で堕してりゃそりゃ障害児減るわ、あったりまえじゃん、理解者の顔で親を追い詰めてるのは、そこのスターつけてるお前らだよ

おまえら障害児を減らし、

国の支援を先細らせ、

障害児の親の数を減らし

情報を先細らせ

病院くらいしかケアできる施設がなくなり

そうして障害児を授かった親が将来に悲観して、堕胎を選びやすくなる、障害児への淘汰圧を産んでいるのは、偽善者の皮を被ったおまえらだよ。

一応確認だけど「誰もが安心して子供を産み育てられる環境があるべき」

とおもっていないってこと?それなら仕方ない、きちんと悪意で地獄への道を舗装していたなら、

おまえら善意を信じすぎた私の勘違いだ、謝罪する

けど、もし違うなら「誰もが安心して子供を産み育てられる環境があるべき」

と思っているなら、一応言っといてやる、健常児を安心して産み育てられる環境ってのは

いわんや障害児をや で考えなきゃ本当に一握りの特殊な人しか子供産めなくなるだけだぞ

( いわんや〜 がわからないひとは 親鸞聖人検索してね)

そんな世界へ加速させる言説はお控えなすってお控えなすって、私はおまえら善意地獄行きたくない

さて、ついでなのでダウン症児を持つ先達として、役に立つ情報もついでに書いておきます

ダウン症に限らず障害のある子を産んだら速攻でコープ共済の告知不要コースに入りましょう、入院予定が無ければ入れます

ほけんの窓口的なところを数件回って調べてみましたが、コープ共済以外で障害児が0歳から入れる医療保険はありません。

うちの子は年に3、4回入院するので現時点でも100万円くらい帰ってきてます

子供医療費無料ですが、子供は付き添い入院必要になるため、どちらかが仕事を休む事になり、大抵の場合収入が減ります

あと無料と言いつつ、なんだかんだで数万とかとられます(期間によりますが)子供の付き添い入院は親の収入保障保険なんて使えないので入院指示がでるまえに、なる早で入りましょう。

すでに入院指示が出ている人も、退院一定期間たてば入れますので検討にはずっといれておいてください、障害児は5歳までコープ以外の保険無いです。

ちないに付き添いといってもやることはありません

しょせん点滴のチューブ首に絡まって死なないように見てるだけのお仕事なのでたんぽぽ置くより簡単です

次に訪問介護をしてもらえないか主治医相談しましょううちの子は0歳からきてもらってますが週に数時間でも時間が開くのは助かります緊急時お金積めば日中みてもらえます、身内の葬式とかあると非常に助かります

ちなみにうちがお世話になっているところは赤ちゃん介護我が家だけなので誰が行くか取り合いだそうです。赤ちゃん可愛いからね、そりゃそうだ。

次に療育手帳を早めに取る計画を立てましょう港区話題児童相談所で取ります

おまえらー、ここメモしとけー、療育手帳とかとるとこなんだぞー

度合いによって療育手帳は、将来二十歳前の福祉年金になります。二十歳前障年金は、子供自身年金保険を「一度も納めたことない」のに降りる給付なので普通の老齢年金より要件が厳しくなっており海外居住すると出なくなったりします、まあそこは20歳以降なのでおいおい調べよう

まずは市役所にいって療育手帳はどこで申請すればよいですかー?と聞きましょう、多分最寄りの児相電話してねとか言われます

児相ごにょごにょ言ってきたら嘘でもいいので保育園に早く入れたくてーなどと言えば、何歳くらいから来ていいか教えてくれます手帳あると保育園も点数アップするよ)

他の障害は知りませんがダウン症だったうちの子を診てもらっている病院では、3歳まで取らないスケジュールで当初は説明されました

が、別に病院市役所連携しているわけでは無いので、さっさと市役所いきましょう。うちは満一歳で速攻予約して取りました

療育手帳を取ると、特別児童扶養手当がでます、なお、手帳なしでも特児は申請可能ですが、あった方が出やすいので取れるならさっさと取るべきです。

なんと月に3万〜5万。子供手当てとは別にます。おっと収入が800万超えると出なくなるので、自営業の人はちゃんと調整しましょう

振込先は、親名義の口座なので、メイン口座とは別の口座に振込ませて貯めておきましょう、振込手数料自治体もちです。毎年一月になったらお年玉という事で、たまってる分を子供の口座へ移動してから子供NISAへ入れましょう。特児は20歳までずっと出るので全部投資に回せばうちらが欲しかった不労所得子供以下略

閑話休題

療育では子供の成長度合いもちゃん定量化して教えてくれます。この定量化がすごく良い。この成長率をベース保育園では、現在3歳なのに1歳児クラスで見てもらってます

ダウン症児の話をしますがダウン症は成長が遅いです。生まれる前は知能発達だけが遅くて、体は成長していくから

力はあるのに心の成長が遅くて他害とかこまるんだろなーなんて思っていましたが、全然違いました、なんと体の発達も遅いです。といってもうちの子ダウン症用の成長曲線すら割り込むくらいなのでダウン症の中でも悪い方だけどね、三歳の現在で一歳半程度の成長率。

身体的には少し歩く程度、身長体重も一歳半程度、言葉ママ、パパ、マンマバイバイあとはダーダーとかぱっぱっぱっぱぱーみたいな破裂音やほぼ喃語みたいなものしか言えず、やっぱり一歳半程度。

ちなみに、歯が生えるのも遅くて一歳なっても生えませんでした。一歳半年でやっと1本という状態、歯くらいふつうに生えてくるんだろうと思っていたので、以外でしたね。

お金に関しては正直かからないどころか増える一方で、むしろ悩みは教育に関して

の子は両方とも大学附属の私立に入れたのでしばらく悩まないで済むのが救い(地方都市受験倍率も低く、習い事都内より安いか教育的に楽です)

ダウン症末っ子は成長段階が遅いだけで順次進んでいるから成長段階にあわせた学年で学べれば何も悩むことはないし

本来的には健常児であれ障害児であれ発達障害児であれ子供の成長にあわせて学年は選んであげるべきなんですけどそんな柔軟性は行政にありません

まあそりゃそうだ、はてな村進歩的を気取った人たちが

男と女 、老人と若者、健常児と障害

単純化した二元論しか見れていないもんね物事には濃淡があるのにさ

こんな文章最後まで読んでくれたはてな村のみんなには、くっだらない二元論世間に加担していないか、今一度自己を振り返って見てもらえれば幸いですよ

そして、腐敗臭漂う二元論は、今年度に置き去りにして新しい元号をお迎えしてもらえればなーと思うわけです。






質問は歓迎しますが、特定に繋がる内容は無視しますのがご容赦を

前述の記事のような状況なので、県×年齢だけでも一桁に絞られ、市内x年齢だけで一人に絞れてしまうので、あしからず

Q タイトル何?

A タイトルコピーメカさんで作成しました (http://www.copymecha.com)

Q 出生前診断したの?

A しました、何かしらの障害があった場合情報を集めて準備するためです

>生存者バイアスじゃねえか

という言及をもらったのですが、消されてしまったのでこちらに、追記

生存者バイアスっていうなら、子供がいること自体がもう生存者バイアスだよね

でも、なぜ健常児なら、まだなんとか育てられると思える人がいるか

元々私が嫌悪を抱いたブコメでも言われてたが

支援する気のない人は文句を言うな

みたいなこと書いてあったよね

健常児にはね、情報があるから判断することができる、コントロールすることができると思えるからじゃないかな?と私は思っている

足りない足りないとは思ってるけど、どんな支援があり、どんな保険があり、どんな教育を選べるか

情報は向こうからプッシュ通知でくるくらい、情報はある。

なぜ健常児には情報が取捨選択できるほどあり、障害児にはないか

結局数だよ、国の支援も、法人から支援も、NPOから支援もすべて、支援されるべき人の数がポイント

例えばね、うちではダウン症などの知的な子への早期教育としての歴史を持つモンテッソーリを受けさせたかたから、近所調べたけど健常児でうまってるわけだ。

そこで、親である私達がモンテッソーリ教師になればいいんでね?と思い、先生になるためのスクール通うことも検討したんだよね

でも嫁さんから、親が教師だとどうしても子供にとっても難しいとの懸念が示され、それならば先生になりたい人を集めて、団体作れば?まで検討はしたんだ

けど残念なことにビジネスするにはパイが足りない

から断念した。多少のサイズがあれば、助成金もだせるって市役所と話し合いまでしたんだけどね。

人は集団生活する社会性の生き物でさ、社会形成できる数がいないと、支援すらろくに行き渡せることができないんだよね

そう思わない?

からはてな記法よくわかんないんだけど、Markdownでいう > ってどーやんの?

障害児が減ったら障害児へのケアが先細るって、増えてる高齢者ケアは先細ってるんだけど。。。

箱も施設急ピッチで増やしてるよ

ただこれも実はわかりきってる問題があって

最盛期がわかっていて、その後減ることが明確にわかってるからだよ

今の数に合わせて箱作っても維持できない

モンテッソーリ教育ってめっちゃ金かかるって聞いてるんだけど、検討できるぐらい増田のとこ稼いでるのか気になる。

モンテッソーリ取り入れてる保育園が市内にあってそこ入れたかったんだよね、次の10月から消費税増税無料化される予定なので、私のお金はあまり関係がないよん

id:hark-k

こちらこそ、コメントくれてありがとう

2019-01-21

anond:20190121093344

生殖レベル社会が維持できるかどうかの話なんだから、もう少しスパンは長いでしょ。

まー衰退が一定以上の水準を超えたら、カネ持っている層から順次逃げ出すとは思うんで、せいぜい200年とかそこらの話にはなると思うんだけど。

2019-01-13

シス男性は同性の裸に興味を持つことが禁止されてるにすぎない

https://anond.hatelabo.jp/20190112203947

シス男性そもそも同性の裸に興味を持たないのがマナー、という空気が作られているだけで別にゲイ排除していないわけではない。

あとシス男性ゲイフォビアは結構強烈だぞ、と思うけれどそれはちょっとサンプルが自分だけなのでもう少し一般化できそうなら今度書く。

顕著な例がトイレかと思うので、トイレの話から

最近どんどん公共トイレが清潔になり、明るくなってきたんだけど、何故か小便器の間の敷居がなくなってきている傾向も出てきた。

パッと見た雰囲気は確かに良くなったが、これはそれだけ「隣の男のちんこが見える」状態になってるってのと同じなんだわな。

例えば大阪メトロは全駅のトイレをきれいにしようっつって全駅に順次おいてる小便器これやぞ(下記リンク画像右上)

http://www.com-et.com/jp/file/fetch/130458/

便器に傾斜がつきまくってるので、小学生がよくやっていた「体を押し付けちんこを隠す」ことすらできない構造になっているのはちんこ見せればええやん、という潔ささえ感じる。

もちろん体を押し付けるのが不衛生極まりないことや、多くのおじさまが小便を床にこぼすからこういう形状に進化してきたのだろうから、仕方ないのかもしれないけれど、カバン掛けじゃなくて一蘭の味集中カウンターみたいに可動式の敷居入れてほしかったやつ。

この「隣のちんこ丸見え問題」に対して世の一般男性がどうやって対策しているかというと、「お互いのちんこに無関心を決め込む」という暗黙の了解を作っているだけなんだよ。

例えば「他の小便器が空いているのに自分の隣に来た友人」に対して「なんだよ隣に来るなよホモかよ」と冗談交じりに言っていた奴は周囲に結構いたのでは?

まり男性男子トイレに入るときに「俺はホモじゃないか他人ちんこには興味ないよ」ってアピールしながらトイレに入るのが常識でありマナーになってる。

このマナーが強烈な支配力を持つせいで、特に思春期の頃は小便器で極端にちんこを隠そうとする奴が出てくるとそれはそれで「ホモかよ」って言われ出すんだよな。

「お互いちんこに興味ないから隠す必要なんてないよね」っていう形にマナー解釈して、極端に隠すやつはむしろ周囲のちんこに興味津々だというレッテル貼られるわけ。

もちろん実際は思春期特有自分の体が他人と違うのでは、という不安から「いや、見たくないんだけどね?目に入るんだよね」ってスタンス他人ちんこチェックしたいっていう思いもあるだろうけど。

とまぁ、なんにせよ、こういう経験を経て、男性は「周囲の男性の裸に興味を持たないもの」というジェンダーロールが作られていくわけ。

から銭湯ゲイがいてもそれは「気にならない」でも「受け入れてる」わけでもなくて、「気にしないのがマナー」になってるクソ事例なんだわ。気にするやつはホモ(お仲間)扱いされるから

この空気に対する言及無しに「銭湯ではゲイを受け入れている」という流れに持ってくのはちょっと無理筋だわ。

ちなみに、トイレの話の補足をしておくと、男性の側から「そんなマナー要らんからシステムで解決してほしい」って声は上がってきていて。すべての男子トイレを個室にして小便器をなくそう、という動きは少しずつ出てきている。

https://www.huffingtonpost.jp/2017/11/10/otoko_a_23272964/?ec_carp=7686460202638501780

和式トイレをなくす運動と同じで、一部の小学校から始まってるとは聞いている。

この流れが進めば最終的にトイレは男女共用になっていくだろうし、そういう世界になってくれれば自分は嬉しい。

2018-12-04

増田プログラマー養成講座 その23 SQLを巡る物語

前回は、データベース設計について学びました。

今回は、その他のデータベース話題について見てみましょう。

 

 

リレーショナル・データベース理論

問合型言語SQLは、「関係代数」という計算モデルを基に作られたプログラミング言語

一度「関係代数」について学んでおくと、RDBの使い方について、理解が深まる。

↑このスライド作者さんは他にもDB関係資料作成されてるので見ておくといいかも?

 

 

SQL以外の問合型言語

SQL以外にも「SPARQL」、「TMQL」(Topic Maps Query Language)等、いろいろな問合型言語がある。

実際に使う機会は少ないかもしれないが、「問い合わせ」で処理するという発想は参考になるかも?

 

Datalog

Datalogは「Prolog」(論理言語)を源流にもつ宣言的なデータベース問合せ言語。DatalogはSQLと同等の表現力を持つ。

Datalogは様々なプログラミング言語で利用できる。

 

トピックマップ

トピックマップ」は、本の索引もっと機能にしたような仕組みで、RDBとは違う形でデータを蓄積/検索できる。

 

 

RDB以外のデータベース

SQLを使わないデータベースもある。

 

NoSQL

NoSQL一般に "Not only SQL" と解釈される)とは、関係データベース管理システム (RDBMS) 以外のデータベース管理システムを指すおおまかな分類語である

関係モデルではないデータストアの特徴として、固定されたスキーマに縛られないこと、関係モデルの結合操作を利用しないこと(場合によっては単にそのような機能が欠落しているだけ)、水平スケーラビティが確保しやすい事が多いこと、トランザクションを利用できないものが多いことなどが挙げられる。

学術的な世界では、この種のデータベースのことを構造ストレージ (structured storage) と呼ぶことが多い。

 

NoSQLデータベースは、関係データベースのような汎用性は欠くものの、その制約された条件下ではRDBMSより高いパフォーマンスを持つ。

そのためビッグデータソリューションでしばしば活用される。

NoSQLデータベース管理システム有用な場面は、関係モデル必要としないデータを扱う時や、大量のデータを扱う時である

 

有名な実装として、GoogleBigTableアマゾンAmazon DynamoDBなどがある。オープンソース実装も数多く存在し、例えばMongoDBRedisApache HBase、HyperTable, Apache Cassandraなどがある。

 

 

SQLRDBに慣れたら、NoSQLも調べてみよう!

 

 

その他、データベース関係話題

DB運用管理で学んでおきたい話題を列挙してみよう。

 

 

SQL開発物語

問合型言語学習最後に、SQLを巡る物語も見てみよう。(SQL学習ドラマチックで楽しいものにしたいねw)

 

 

RDB活用すれば、大量のデータを処理して、多くの仕事効率化できる。(金持ちへの扉が開かれる。)

暇があったら、SQL物語登場人物も見ておこう。

 

エドガーフランク・コッド(Edgar Frank "Ted" Codd, 1923年8月23日 - 2003年4月18日)は、イングランドまれ計算機科学者

関係データベース理論的基盤であるデータベース管理関係モデル発明した。

 

1960年代から1970年代、コッドはデータ配置に関する理論を構築し、1970年 "A Relational Model of Data for Large Shared Data Banks" (大規模共有データバンクのデータ関係モデル)という論文を発表した(IBM内ではその1年前に公表している)。

しかし、IBMライバルがそれを実装し始めるまで彼の提案を実行に移そうとせず、コッドは失望した。

当初、IBMはIMS/DB収益を守るため、関係モデル実装することを拒んだ。

コッドはIBM顧客自身モデル実装した場合可能性を提示し、顧客からIBM圧力をかけさせた。

そこでIBM関係モデル実装を開発する System R プロジェクトを Future Systems プロジェクトに含める形で立ち上げたが、その開発チームとコッドは分離され、しかもコッドの理論精通した者はチーム内にいなかった。

結果として彼らはコッドの Alpha 言語を使わずリレーショナルでないSEQUEL言語を開発した。

 

ラリーエリソンSEQUEL 完成前に発表された論文に基づいて Oracle を完成させ、先に発売している。

IBMは、SQL/DS を発売した。

幹部技術音痴だと、部下の名案も却下してしまうんですね?

 

ローレンス・ジョセフ・エリソン(Lawrence Joseph Ellison、1944年8月17日 - )は、データベースソフトをはじめとする大手ビジネスソフトウェア企業オラクルコーポレーションの共同設立者であり、元CEO会長CTOである

2014年現在総資産は500億ドルで、世界で5番目の富豪である

 

ニューヨーク出身アシュケナジムユダヤ人母親フローレンススペルマン(Florence Spellman)は出産当時未婚の19歳で、生後9ヶ月のラリーシカゴに住む叔母リリアンエリソンとその夫である義理叔父ルイスエリソン養子として引き取ってもらった。ラリーは実の母の名も知らず育ったが、48歳の時に初めて対面した。

 

高校時代秀才だが、無愛想な生徒だった。イリノイ大学アーバナシャンペーン校に二年生まで通っていたが、リリアンの死後まもなく退学。カリフォルニア州北部で夏を過ごした後、シカゴ大学で学ぶために実家に戻ったものの三ヶ月でまたも退学し、カリフォルニア移住。この頃、コンピュータに触れ始めている。

 

1970年代エリソンはアンペックスで働いた。彼の関わったプロジェクトのひとつCIA向けデータベース開発があり、彼はそれに「オラクル (Oracle)」と名づけた。

エリソンエドガー・F・コッドのリレーショナルデータベースシステムに関する論文 A Relational Model of Data for Large Shared Data Banks に触発され、1977年自己資金1400ドルオラクル設立した。

彼はIBMのSystem Rデータベースがコッドの理論に基づいたものであると聞き、Oracleもこれと互換性のある製品にしたかったのだが、IBMエラーコード秘密にすることによって互換製品が出てくるのを防いでいた。

オラクル最初製品Oracle 2であり、Oracle 1は存在しない。このリリース番号は、それ以前のバージョンバグが全て解決されていることを暗示しようとして付けられた。

 

1997年8月ラリーエリソン親友スティーブ・ジョブズアップルに戻った後、同社の取締役就任した。2002年9月20日取締役会に出席する時間が充分に取れないことを理由アップル取締役を辞任した。

この人、キャラクター的にはあまりきじゃないけど、行動力はすごいね

コッド博士論文を見て自分RDBを作っちゃった!

Oracleバージョンを「2」から始めて、改良されているように見せかける。~ちょっと詐欺っぽいけど、商売うまい?w

 

 

 

SQLデータベース活用して、素敵なアプリWebサービスを開発してください。

では、これでいったん、増田プログラマー養成講座を終了します。

御清聴いただき、どうもありがとうございました。

 


anond:20181015215004 未経験からプログラマーなんだが全然からない

anond:20181016015826 増田プログラマー養成講座 その1 パソコンの用意

anond:20181016164341 増田プログラマー養成講座 その2 プログラム=データ+処理、プログラム言語の種類

anond:20181016180059 増田プログラマー養成講座 その3 構造プログラミングの基本(順次、反復、分岐

anond:20181016193144 増田プログラマー養成講座 その4 子ども向け教材「Scratch」で構造プログラミングの練習

anond:20181017161003 増田プログラマー養成講座 その5 オブジェクトとは何か?

anond:20181017191404 増田プログラマー養成講座 その6 OOPの種類、PHPの準備

anond:20181019181549 増田プログラマー養成講座 その7 OOPの仕組み(前半)

anond:20181020230044 増田プログラマー養成講座 その8 OOPの仕組み(後半)

anond:20181022232327 増田プログラマー養成講座 その9 MVCフレームワークを使ってみよう

anond:20181023184616 増田プログラマー養成講座 その10 OOP参考書

anond:20181024214133 増田プログラマー養成講座 その11 データベースを使ってみよう

anond:20181026145516 増田プログラマー養成講座 その12 データベース参考書

anond:20181028152656 増田プログラマー養成講座 その13 SQL文法

anond:20181031014212 増田プログラマー養成講座 その14 Webアプリの試作品作成

anond:20181101225335 増田プログラマー養成講座 その15 Webアプリの完成見本

anond:20181101230220 増田プログラマー養成講座 その16 Webアプリの完成見本(続き)

anond:20181104161900 増田プログラマー養成講座 その17 Webアプリの骨組み

anond:20181104233013 増田プログラマー養成講座 その18 SQLデータの追加と取得

anond:20181110120715 増田プログラマー養成講座 その19 SQLデータ更新

anond:20181110182445 増田プログラマー養成講座 その20 SQLデータの削除

anond:20181111205255 増田プログラマー養成講座 その21 データベース設計 (1)要件定義

anond:20181119224031 増田プログラマー養成講座 その22 データベース設計 概念物理

anond:20181204142213 増田プログラマー養成講座 その23 SQLを巡る物語 ←★今ここ★

anond:20181024214737 増田プログラマー養成講座 コンテンツ一覧

2018-12-02

外国人技能実習生制度なんか、奴隷制度だから、止めちまえ!

実習生恋愛妊娠禁止 施設側「生産能力が落ちる」:朝日新聞デジタル

https://www.asahi.com/articles/ASLCZ7220LCZUTIL05X.html

これ、外国人向けにそうさせられるということは、当然、権力のない日本人労働者(とくに派遣)に対しても、同じ対応しているということだからな。

日本人外国人かで多少、奴隷の度合いが違うだけで、実質、このような奴隷扱うする会社は、日本人奴隷扱いしている。

人間ロボット代わりに、ロボット以下に扱う企業を全部潰してしまえ! そういう会社は、全部潰れろ!

 

なにも、外国人技能実習生じゃなくても、日本人派遣労働者奴隷度合いが少し緩いだけだ。

大衆向けに使っている、いわゆる”派遣”は奴隷である。それは「派遣」ではない。

悲しいけど、大衆向けに使っている、いわゆる”派遣”は奴隷

なので、何人(なんびと)も”派遣”に手を出してはいけない。

本来の「派遣」は、専門的な何かを持っている人対象であり、そのような人らは、最低限でも年間1,000万円以上の報酬手取り)がある。

何が言いたいかというと、”派遣”の仕事で、手取りで年間1,000万円を切る案件は、「派遣」ではない。

 

まさに、明治時代女工哀史で語られていることは、いまの日本人奴隷派遣)哀史そのものと思えるし、さら人間を買い叩いたバージョン外国人技能実習生奴隷哀史そのものになりつつある。

まっ、千葉県船場市の街なかにいても、これを肌で感じるんだから、全国津々浦々、こんな感じだと思う。

 

この「フリーター漂流ときからすでに10年以上経っているけれども、いまはこのときよりもさらにひどいことになっている。

この”派遣”、奴隷労働を法改正順次経て、法的に認める方向になっている。

フリーター漂流 https://www.nicovideo.jp/watch/sm26120858 via ニコニコ動画

2018-11-20

はてなアイデア

わ!本当にありやがったwww

てかサービス終了してるしwww

 

はてなアイデアとは http://d.hatena.ne.jp/keyword/%A4%CF%A4%C6%A4%CA%A5%A2%A5%A4%A5%C7%A5%A2

はてなのサービスの1つ。

はてなへの要望不具合報告を募集・処理する仮想市場サービスだった。

アイデアに対してポイント株式見立て仮想的に「売り」「買い」する。

1000株に達することを「上場」と呼び、上場したアイデアは、はてな運営によって検討され、「見送り」「他の方法」「実装」など順次処理された。

2012年から運営側は「上場」したアイデアに対して処理を事実上放置するようになった。

2013年7月31日サービスを終了した。

 

はてなはもう面白いサービスを作るフェーズじゃないのかもね?

競合他社がいなければ新参でもチャンスあり!?

2018-11-19

増田プログラマー養成講座 その22 データベース設計 概念物理

前回は、DB設計の(1)要件定義を学びました。

今回は、DB設計の(2)概念設計、(3)論理設計、(4)物理設計を見てみましょう。

 

DB設計の流れ

  1. 要件定義
  2. 概念設計
  3. 論理設計
  4. 物理設計

 

DB設計の教材

データベース解説本やWeb記事を調べてみた。

  1. 本「スッキリわかるSQL入門」 第12章 テーブル設計 https://book.impress.co.jp/books/1111101167
  2. Web記事「できるエンジニアになるためのちょい上DB術」 https://www.edifist.co.jp/lecture/dbdesign/

 

スッキリわかるSQL入門」のDB設計説明コンパクトにまとまっていて、分かりやすいと思いました。(是非一度読んでみてください。)

 

 

 

概念設計論理設計物理設計概要

スッキリわかるSQL入門」第12章の説明(p.374)を参考にしてみよう。(詳しくは本を読んでみてください。)

 

概念設計

管理すべき情報はどのようなものなのかを整理します。

データベースシステムに関することは考えず、要件に登場する情報だけをザックリと把握します。

たとえば、家計簿データベースであれば、扱うべき情報として「利用者情報」や「入出金情報」などがあることを明確にします。

また、情報間で関連がある場合、どのような関係があるかも併せて整理します。

 

論理設計

概念設計で明らかになった各情報について、RDBを使う前提で構造を整理し詳しく具体化していきます

論理設計では「どのようなテーブルを作り、それぞれのテーブルにどのような列を作るか」まで明らかにすれば十分です。

型や制約など、付随的な部分については考えません。

 

物理設計

特定DBMS製品(たとえばMySQL)を使う前提に立ち、論理設計で明らかになった各テーブルについて、その内容を詳しく具体化していきます

すべてのテーブルのすべての列について、型、インデックス、制約、デフォルト値など、テーブル作成必要なすべての要素を確定させます

この物理設計に基づいて、CREATE TABLE文などを含む一連のDDL文を作成し、最終的にデータベース内にテーブル作成することができます

 

本書の「図12-4 データベース構築のおおまかな流れ」も参考にして欲しい。

入力 お客様要件(全国の倉庫商品があって、その在庫管理したいんだけど~)

 

 

●処理 DB設計作業

 ・概念設計:(商品)(在庫)(倉庫) …ER図を作成

 ・論理設計:[商品][在庫][倉庫]    …正規化

 ・物理設計:[SHOHIN][ZAIKO][SOUKO]  …使うDB仕様に合わせてテーブル定義表を作成

 

 

●出力 DDL

 ・CREATE TABLE

 ・CREATE VIEW

 ・CREATE INDEX

 

 

 

(2) 概念設計

 

ER図とは?

ER図とは、「Entity-relationship Diagram」(実体関連図)の省略形だ。

 

ER図の用語

コンピューター用語英語ばっかりだから日本語にして欲しいよねw

 

ER図の書き方
  1. エンティティ―」は四角い箱で書く。
  2. 箱の中にエンティティ―の詳細な中身=「アトリビュート」を書く。
  3. 箱と箱を「リレーション」の線でつなぐ。
  4. 線の両端に「カーディナリティー」「オプショナリティー」の記号を書く。

 

ER図で使う記号は、「IE記法」や「IDEF1X記法」など、いろいろな規格がある。

情報処理技術者試験のデータベーススペシャリストの問題では、「UML」という図の記法も使われる。

 

 

 

(3) 論理設計

 

正規化とは?

正規化 Normalization」とは、データの形を「正規形」(Normal form)に変えること。

ざっくり言うと、テーブル(表)を分割して、データの重複や不整合を解消する作業だ。

 

テーブルの形を変えていくステップには、第1~第5まで5段階ある。

  1. 第1正規
  2. 第2正規
  3. 第3正規
  4. 第4正規
  5. 第5正規

それぞれの変形方法について理解しておこう。

実務では第3正規形まで正規化できればとりあえずOK

 

第3.5正規形(ボイス-コッド正規形)

第3正規形をより厳密にした「ボイス-コッド正規形」という形もある。

第3と第4の間なので「第3.5正規形」とも呼ばれている。

(ボイス-コッド形もカウントに入れたら、第1~第5、+第3.5で計6段階になる。)

 

非正規

正規化を進めると、SQLJOIN」の利用が増えてくる。JOINを多用する処理は遅い=DBの性能低下につながる。

第3正規形まで分割しても、実際に使ってみて遅い場合は、第2正規形や第1正規形に戻して使うこともある。これを「非正規化」とか「正規化を崩す」などという。

 

RDBでは処理速度が遅くなる場合、代わりに「NoSQL」を使う場合もある。

 

 

 

(4) 物理設計

 

時間がない場合、先にGUIDB管理ツールでデータベース作成してしまい、その後でテーブル定義表を作成することもある。

 

DB設計に慣れてきたら上記の各段階はすっ飛ばして、いきなりデータベースを作れるようになるだろう。

 

ここまで、SQLの使い方やデータベース設計について学びました。

次回は、その他のSQLに関連する話も見てみよう。

 


anond:20181015215004 未経験からプログラマーなんだが全然からない

anond:20181016015826 増田プログラマー養成講座 その1 パソコンの用意

anond:20181016164341 増田プログラマー養成講座 その2 プログラムデータ+処理、プログラム言語の種類

anond:20181016180059 増田プログラマー養成講座 その3 構造プログラミングの基本(順次、反復、分岐

anond:20181016193144 増田プログラマー養成講座 その4 子ども向け教材「Scratch」で構造プログラミング練習

anond:20181017161003 増田プログラマー養成講座 その5 オブジェクトとは何か?

anond:20181017191404 増田プログラマー養成講座 その6 OOPの種類、PHPの準備

anond:20181019181549 増田プログラマー養成講座 その7 OOPの仕組み(前半)

anond:20181020230044 増田プログラマー養成講座 その8 OOPの仕組み(後半)

anond:20181022232327 増田プログラマー養成講座 その9 MVCフレームワークを使ってみよう

anond:20181023184616 増田プログラマー養成講座 その10 OOP参考書

anond:20181024214133 増田プログラマー養成講座 その11 データベースを使ってみよう

anond:20181026145516 増田プログラマー養成講座 その12 データベース参考書

anond:20181028152656 増田プログラマー養成講座 その13 SQL文法

anond:20181031014212 増田プログラマー養成講座 その14 Webアプリの試作品作成

anond:20181101225335 増田プログラマー養成講座 その15 Webアプリの完成見本

anond:20181101230220 増田プログラマー養成講座 その16 Webアプリの完成見本(続き)

anond:20181104161900 増田プログラマー養成講座 その17 Webアプリの骨組み

anond:20181104233013 増田プログラマー養成講座 その18 SQLデータの追加と取得

anond:20181110120715 増田プログラマー養成講座 その19 SQLデータ更新

anond:20181110182445 増田プログラマー養成講座 その20 SQLデータの削除

anond:20181111205255 増田プログラマー養成講座 その21 データベース設計 (1)要件定義

anond:20181119224031 増田プログラマー養成講座 その22 データベース設計 概念物理 ←★今ここ★

anond:20181024214737 増田プログラマー養成講座 コンテンツ一覧

2018-11-16

anond:20181116085135

ものによるが早いと一カ月くらいで増産できるし妊婦子供予測できるだろう。

まあ男性が一斉に押し寄せなければ大丈夫

子供いないと予防接種が珍しいだろうが行政から順次お知らせくるだけだから住民票は忘れずに移してあと大人しく待っとけ

2018-11-15

anond:20181115091014

順次もどってきてくれるかもしれないじゃん~。

2018-11-13

サービス終了のご案内

2019年3月をもって、「おこづかいQUICPay」のサービスを終了いたします。

これに伴う各種サービスも、順次、終了となります

詳細は下をご覧ください。

2018年11月15日(木)終了】

新規申込(MyJCB・入会申込書)の受付

2019年3月31日(日)】

おこづかいQUICPayサービス終了

https://www.jcb.co.jp/ordercard/add/quicpay/apply-cardmembers/children/index.html

5年でサービス終了

利用者が少なかったんやろなぁ

2018-11-11

増田プログラマー養成講座 その21 データベース設計 (1)要件定義

前回まで、データベースを使ったWebアプリ作成して、SQLの使い方を学びました。

今回からデータベース設計について学んでみよう。

 

参考書

これらの参考書ガッツリ読めば、データベース設計のやり方は分かる。

 

リレーショナル・データベースは昔からある枯れた(=安定した)技術なので、鉄板ノウハウが蓄積されている。

先人の知恵に沿って使うなら、データベース設計で悩む余地は少ない。=攻略は意外と簡単

 

データベーススペシャリスト教科書

経済産業省認定情報処理技術者試験で「データベーススペシャリスト」という資格もある。

 

データベースエンジニア」という肩書きを名乗れば、ただのプログラマーよりも高給取りになれる。勉強した後、自分知識棚卸してみるつもりで資格を取ってみるのもいいだろう。

データベーススペシャリスト試験教科書には、浅く広くDB知識網羅されているので、1度眺めてみたらいいかも。

 

 

 

データベース設計の流れ

データベース設計(database design)は、ソフトウェア開発工程においてデータベースの詳細なデータモデルを作る工程である

 

  1. 要件定義:「CRUD表」の作成
  2. 概念設計:「概念モデル」の作成 → ER図(実体参照モデル)の作成
  3. 論理設計:「論理モデル」の作成 → テーブル定義表の作成
  4. 物理設計:「物理モデル」の作成 → 論理モデルを実際にデータベース上で作成インデックス作成など

(分類方法にもよるけど)データベース設計は、このようなステップを経る。それでは順番に見ていこう。

 

 

 

1.1 永続化するデータを決定する

いわゆる「要件定義」だ。

実際にシステムを使うことになるユーザーヒアリング調査して、データベース内に永続化(格納)すべきデータを決定する。

 

CRUD表とは?

データCRUD操作(Create 追加、Read 参照、Update 更新Delete 削除)が、いつ、どこで発生するか?をまとめた表のこと。

 

データベース 設計 CRUD表」等のキーワードGoogle画像検索してみよう。どんな表か分かる。

↑このページの「図2 標準的CRUD図(例)」みたいな表を作って確認すれば、扱うデータの過不足がなくなる。

 

複雑なシステムだと、完全なCRUD表を作るのは面倒だよねw

だが安心して欲しい!

押さえておくべきポイントはあるので、そこだけ手抜きをしなければ、大失敗は避けられるだろう。

 

マスタートランザクションの違い

実は、後でテーブルを作るときに、データ更新頻度によって2種類に分類できるんだ。

 

 

トランザクションデータの扱いは、気を付けないとデータベースの性能低下に直結する。

どっちのタイプデータなのか?要件定義の段階から見分ける癖を付けておこう。

 

要件定義練習

試しに、Amazonのような通販サイトなら、どんなデータを扱うことになるのか?想像してみよう。

仕入先、在庫数、受発注配送会社顧客情報商品カテゴリー、商品スペック、などいろいろあるだろう。

いつどこでCRUDが発生するか?どれがマスターデータで、どれがトランザクションデータだろうか?

 

 

 

(ここまでの説明URLを8個も貼ってしまったので、続きは次回にしよう。)

次回は「概念設計」以降のステップを見てみよう。

 


anond:20181015215004 未経験からプログラマーなんだが全然からない

anond:20181016015826 増田プログラマー養成講座 その1 パソコンの用意

anond:20181016164341 増田プログラマー養成講座 その2 プログラムデータ+処理、プログラム言語の種類

anond:20181016180059 増田プログラマー養成講座 その3 構造プログラミングの基本(順次、反復、分岐

anond:20181016193144 増田プログラマー養成講座 その4 子ども向け教材「Scratch」で構造プログラミング練習

anond:20181017161003 増田プログラマー養成講座 その5 オブジェクトとは何か?

anond:20181017191404 増田プログラマー養成講座 その6 OOPの種類、PHPの準備

anond:20181019181549 増田プログラマー養成講座 その7 OOPの仕組み(前半)

anond:20181020230044 増田プログラマー養成講座 その8 OOPの仕組み(後半)

anond:20181022232327 増田プログラマー養成講座 その9 MVCフレームワークを使ってみよう

anond:20181023184616 増田プログラマー養成講座 その10 OOP参考書

anond:20181024214133 増田プログラマー養成講座 その11 データベースを使ってみよう

anond:20181026145516 増田プログラマー養成講座 その12 データベース参考書

anond:20181028152656 増田プログラマー養成講座 その13 SQL文法

anond:20181031014212 増田プログラマー養成講座 その14 Webアプリの試作品作成

anond:20181101225335 増田プログラマー養成講座 その15 Webアプリの完成見本

anond:20181101230220 増田プログラマー養成講座 その16 Webアプリの完成見本(続き)

anond:20181104161900 増田プログラマー養成講座 その17 Webアプリの骨組み

anond:20181104233013 増田プログラマー養成講座 その18 SQLデータの追加と取得

anond:20181110120715 増田プログラマー養成講座 その19 SQLデータ更新

anond:20181110182445 増田プログラマー養成講座 その20 SQLデータの削除

anond:20181111205255 増田プログラマー養成講座 その21 データベース設計 (1)要件定義 ←★今ここ★

anond:20181119224031 増田プログラマー養成講座 その22 データベース設計 概念物理

anond:20181024214737 増田プログラマー養成講座 コンテンツ一覧

はてブって意味不明コメントが人気1位になり過ぎで怖い

khwarizmi こういうのを見るに,高度成長期日本の成長というのは今のアメリカみたいにアジア周辺国の才能を吸い取って成し遂げられていたものなのだなあと思う。平成になって減速したのは当然なんだろう。 社会 経済 10 clicks

2018/11/11 リンク Add Stargabilljakuonnowa_sdy0kangirenmillipedeyarimokuIridiumenemyoffreedomsizukanayorugrdgsBenjaminWyattakiramazbulletko_kanagawasenbuuregicat

http://b.hatena.ne.jp/entry/s/gendai.ismedia.jp/articles/-/58365


なんで日清の百福さんの1例からここまで言えるのか。

高度成長期アジア周辺国から吸い取られた才能」って具体的に何?

安藤百福さん自体は立派な人だけど、なんで彼がこんな滅茶苦茶な日本disに使われるのかわからない。


アメリカみたいに」って、世界一移民国家と比べますか?

高度成長期日本にいたのは百福さんみたいな居残り台湾人

朝鮮戦争とき祖国捨てて順次逃げてきた南北コリアン人ぐらいですよ。

高度成長は日本人の頑張りではなくて、そのアジア人達の才能が原動力だったと?

どういう根拠

割合的にもわずかな(そしていいたくないけど無職ヤクザもんも多かった)人達の才能が日本の成長を成し遂げたと?

日本人なんかは貢献してないんだと?


意味不明すぎるしぶっちゃけ日本人に対する感情的な難癖ヘイトに思えるんだけど

「そうじゃなくてちゃん合理的説明出来る事実なんだ」って反論あるの?


しかもその理屈なら日本に在住する外国人は増える一方なんだから

平成になって減速するのは当然」っていうのは自分理論的にもおかしくない?

どれぐらいまともに思考した上で書いてるのこれ?


☆つけてる人達でもいいけど合理的説明が出来るなら是非書いてほしい。

絶対誰も説明出来ずにだんまりでしょ。

日本ヘイト出来て嬉しい!事実性なんて知ったことか!」ってノリで☆つけただけだから

2018-11-10

増田プログラマー養成講座 その20 SQLデータの削除

前回は、SQLデータ更新をやりました。

今回は、SQLデータの削除をやりましょう。

 

メッセージの削除

基本は、同じなので前回やった更新処理をちょっと変えれば削除もすぐできます

 

投稿されたメッセージを削除する機能を、Webページに付けてみよう。

 

削除ページにジャンプするリンク

前々回作ったメッセージの一覧の中に、削除ページにジャンプするリンクも入れておいた。

<td><a href="welcome/delete/<?php echo $item['id']; ?>">削除</a></td>

という1行が削除ページにジャンプするためのリンクになる。

ブラウザーHTMLソースを見ると、ここが以下のようなHTMLに書き換わってる。

<td><a href="welcome/delete/2">削除</a></td>

これは「メッセージID番号が2のメッセージ」を削除対象にして、削除ページにジャンプする。

 

Controllerの改造

ユーザーが「http://localhost/waf/welcome/delete/2」というURLで、削除ページにアクセスしたら、コントローラーで「2」を受け取って使いたい。

CodeIgniterでは、URL文字列を解析して、使うことができる。

以下のようにコントローラーを改造してみよう。

 

// 削除画面

public function delete($id = '')

{

 echo "ID=".$id;

 $this->load->view('chat_delete');

}

 

Controllerの改造の解説

delete()メソッド引数で、URL中の「2」の部分を受け取れる。

これは前回の編集ページ(更新の処理)と同じ。

「$id = $this->uri->segment(3);」でも受け取れる。

 

Viewの改造

削除ページでは、確認する質問を入れてみよう。

ユーザーに「本当に削除しますか?」みたいな注意喚起をしておきたい。

 

ファイルの内容を以下のように編集する。

<?php defined('BASEPATH') or exit('No direct script access allowed');?>

<!DOCTYPE html>

<html>

 <head>

  <meta charset="utf-8">

  <title>増田チャット</title>

  <base href="<?php echo base_url(); ?>">

 </head>

 <body>

  <h1>増田チャット</h1>

  <h2>削除</h2>

  <p>以下のメッセージを削除しますか?</p>

  <form action="welcome/delete" method="post" accept-charset="utf-8">

   <?php if (isset($talk)): ?>

   <p style="background-color:lightpink"><?php echo $talk['message']; ?></p>

   <input type="hidden" name="id" value="<?php echo $talk['id']; ?>">

   <input type="hidden" name="action" value="delete">

   <?php else: ?>

   <p>※該当するメッセージがありません。(または削除済です。)</p>

   <?php endif;?>

   <button>削除する</button>

  </form>

  <p><a href="welcome/index">戻る</a></p>

 </body>

</html>

 

Viewの改造の解説

<p style="background-color:lightpink"><?php echo $talk['message']; ?></p>

削除するメッセージを色付きで強調して、ユーザー確認してもらう。

 

<input type="hidden" name="id" value="<?php echo $talk['id']; ?>">

コントローラー削除対象メッセージID番号を送るため、inputタグの「type="hidden"」でメッセージID番号を仕込んでおく。

 

Controllerの改造

ファイルの内容を以下のように編集する。

// 削除画面

public function delete($id = '')

{

 $id = $id ? $id : $this->input->post('id');

 $action = $this->input->post('action');

 if ($action == 'delete') {

  $this->chat_model->delete_message($id);

 }

 $data['talk'] = $this->chat_model->read_message_by_id($id);

 $this->load->view('chat_delete', $data);

}

 

Controllerの改造の解説

やってることは、前回のデータ更新場合とほぼ同じ。

$this->chat_model->delete_message($id);

で、モデルに用意したデータ削除用メソッドを呼び出しているだけ。

次は、モデルdelete_message()メソッドを用意しよう。

 

Modelの改造

ファイルの内容を以下のように編集する。

// Delete

public function delete_message($id = 0)

{

 $sql = "DELETE FROM talk WHERE id = ?";

 $param = array($id);

 $this->db->query($sql, $param);

 return $this->db->affected_rows();

}

 

Modelの改造の解説

SQLの「DELETE」を使えば、指定したレコード(1件分のデータ)を削除できる。

DELETE FROM talk WHERE id = ?」で、talkテーブルmessageid指定して削除している。

 

データを削除した後の挙動は、メッセージID番号がなくなるので、削除ページに表示できるメッセージデータがなくなる。

(例)id=2のデータを削除したら、SQLで「SELECT * FROM talk WHERE id = 2」を取得しても、空のデータデータがない状態

その場合は、

<p>※該当するメッセージがありません。(または削除済です。)</p>

と表示させてる。

 

まとめ

以上で、SQLの「DELETE」を使ったデータの削除ができた。

長々と説明したが、今回の大事な点は、SQLの「DELETE」の使い方だ。

 

以上で、MVCフレームワークを使ったOOPの使い方とSQLの使い方を見てきた。

SQLSQLだけで説明したほうが良かったね!MVCフレームワーク説明SQL説明が混在すると要点が分かりづらくなる?)

ちょっと失敗だったかも。m(__)m)

 

次回は、データベースの設計について学んでみよう。

 


anond:20181015215004 未経験からプログラマーなんだが全然からない

anond:20181016015826 増田プログラマー養成講座 その1 パソコンの用意

anond:20181016164341 増田プログラマー養成講座 その2 プログラムデータ+処理、プログラム言語の種類

anond:20181016180059 増田プログラマー養成講座 その3 構造プログラミングの基本(順次、反復、分岐

anond:20181016193144 増田プログラマー養成講座 その4 子ども向け教材「Scratch」で構造プログラミング練習

anond:20181017161003 増田プログラマー養成講座 その5 オブジェクトとは何か?

anond:20181017191404 増田プログラマー養成講座 その6 OOPの種類、PHPの準備

anond:20181019181549 増田プログラマー養成講座 その7 OOPの仕組み(前半)

anond:20181020230044 増田プログラマー養成講座 その8 OOPの仕組み(後半)

anond:20181022232327 増田プログラマー養成講座 その9 MVCフレームワークを使ってみよう

anond:20181023184616 増田プログラマー養成講座 その10 OOP参考書

anond:20181024214133 増田プログラマー養成講座 その11 データベースを使ってみよう

anond:20181026145516 増田プログラマー養成講座 その12 データベースの参考書

anond:20181028152656 増田プログラマー養成講座 その13 SQL文法

anond:20181031014212 増田プログラマー養成講座 その14 Webアプリの試作品作成

anond:20181101225335 増田プログラマー養成講座 その15 Webアプリの完成見本

anond:20181101230220 増田プログラマー養成講座 その16 Webアプリの完成見本(続き)

anond:20181104161900 増田プログラマー養成講座 その17 Webアプリの骨組み

anond:20181104233013 増田プログラマー養成講座 その18 SQLデータの追加と取得

anond:20181110120715 増田プログラマー養成講座 その19 SQLデータ更新

anond:20181110182445 増田プログラマー養成講座 その20 SQLデータの削除 ←★今ここ★

anond:20181111205255 増田プログラマー養成講座 その21 データベース設計 (1)要件定義

anond:20181024214737 増田プログラマー養成講座 コンテンツ一覧

増田プログラマー養成講座 その19 SQLデータ更新

前回は、Webアプリの骨組み(スケルトン)に、SQLデータの追加と取得をやりました。

今回は、SQLデータ更新をやりましょう。

 

メッセージ更新

 

編集ページにジャンプするリンク

前回作ったメッセージ一覧に、[編集]のリンクも入れておいた。

<td><a href="welcome/update/<?php echo $item['id']; ?>">編集</a></td>

という1行の部分。

[編集]をクリックすると、編集用ページにジャンプする。

ブラウザーHTMLソースを見ると、以下のようなHTMLになってるはず。

<td><a href="welcome/update/2">編集</a></td>

これは「メッセージID番号が2」を対象にして、編集ページにジャンプすることを意味する。

 

Controllerの改造

編集用ページのコントローラーを作ろう。

「http://localhost/waf/welcome/update/2」というURL編集ページにアクセスしたら、メッセージID番号の「2」を受け取れるようにしたい。

URL文字列を処理して「2」を取り出せるようにしよう。

 

// 更新画面

public function update($id = '')

{

 echo "ID=".$id;

 $this->load->view('chat_update');

}

 

CodeIgniterでは、URLから文字列を取り出す方法がいくつか用意されている。

  1. 「update($id = '')」のようにメソッド引数「$id」を用意すれば、「2」の部分を取り出せる。
  2. 引数を使う以外の方法も用意されていて、「$id = $this->uri->segment(3);」のように書けば、「2」の部分を取り出せる。

// 更新画面

public function update()

{

 $id = $this->uri->segment(3);

 echo "<hr> ID=".$id;

 $this->load->view('chat_update');

}

 

Controllerの改造の解説

CodeIgniterで、URL文字列から特定部分の文字列を取り出す方法を見ておこう。

 

例えば、「http://localhost/waf/welcome/update/aaa/bbb/ccc」というURLアクセスしたときCodeIgniterではURL中の「aaa」「bbb」「ccc」という部分は、以下のようにして取り出せる。

$seg1 = $this->uri->segment(1); // → 1番目のURL文字列:「welcome」=コントローラークラス

$seg2 = $this->uri->segment(2); // → 2番目のURL文字列:「update」=クラスの中のメソッド

$seg3 = $this->uri->segment(3); // → 3番目のURL文字列:「aaa」の部分

$seg4 = $this->uri->segment(4); // → 4番目のURL文字列:「bbb」の部分

$seg5 = $this->uri->segment(5); // → 5番目のURL文字列:「ccc」の部分

URLを「/」で区切って、base_url(http://localhost/waf/)の次から順番に、1番目のURL文字列、2番目のURL文字列、3番目のURL文字列、…とsegment()メソッドで順番を指定すれば取得できる。

 

Modelの改造

データベースでメッセージID指定して、メッセージを取り出す機能を用意しよう。

 

ファイルに以下のメソッドを追加する。

// Read by Id

public function read_message_by_id($id = 0)

{

 $sql = "SELECT * FROM talk WHERE id = ?";

 $param = array($id);

 $query = $this->db->query($sql, $param);

 return $query->row_array();

}

 

Modelの改造の解説

SQLの「WHERE」句で、絞り込む条件を指定できる。

 

SELECT * FROM talk WHERE id = ?

「WHERE id = 2」とすれば、メッセージID番号が2のメッセージデータが「talkテーブルから取り出せる。

もし該当するデータがなければ、返されるデータは空になる。(データが返ってこない。)

 

CodeIgniterの「row_array()」は、1件分のデータ配列の形にして返すメソッドだ。

 

Viewの改造

ファイルの内容を以下のように編集する。

<?php defined('BASEPATH') or exit('No direct script access allowed');?>

<!DOCTYPE html>

<html>

 <head>

  <meta charset="utf-8">

  <title>増田チャット</title>

  <base href="<?php echo base_url(); ?>">

 </head>

 <body>

  <h1>増田チャット</h1>

  <h2>編集</h2>

  <p>メッセージを変更して「更新する」ボタンを押してください。</p>

  <form action="welcome/update" method="post" accept-charset="utf-8">

   <label>メッセージ</label>

   <?php if (isset($talk)): ?>

   <input type="text" name="message" value="<?php echo $talk['message']; ?>">

   <input type="hidden" name="id" value="<?php echo $talk['id']; ?>">

   <input type="hidden" name="action" value="update">

   <?php else: ?>

   <p>※該当するメッセージがありません。</p>

   <?php endif;?>

   <button>更新する</button>

  </form>

  <p><a href="welcome/index">戻る</a></p>

 </body>

</html>

 

Viewの改造の解説

データベースから取り出した1件分のメッセージを表示する部分を追加した。

<input type="text" name="message" value="<?php echo $talk['message']; ?>">

の「<?php echo $talk['message']; ?>」という部分だ。

これで変更したいメッセージの本文を表示できる。

 

あと、編集したメッセージWebサーバーに送信できるように、Formタグ送信ボタン(「更新する」の部分)も追加した。

このときメッセージID番号も送信できるように、

<input type="hidden" name="id" value="<?php echo $talk['id']; ?>">

という1行も仕込んである

 

Controllerの改造

ファイルの内容を以下のように編集する。

// 更新画面

public function update($id = '')

{

 $id = $id ? $id : $this->input->post('id'); // id -> segment or post

 $action = $this->input->post('action');

 if ($action == 'update') {

  $message = $this->input->post('message');

  $this->chat_model->update_message($id, $message);

 }

 $data['talk'] = $this->chat_model->read_message_by_id($id);

 $this->load->view('chat_update', $data);

}

 

Controllerの改造の解説

メッセージID番号を指定して、データベースから取り出し、Viewに渡すデータを用意している。

$data['talk'] = $this->chat_model->read_message_by_id($id);

 

ユーザーメッセージ編集をしてWebサーバーに送信したら、データ更新する指示を出す部分も追加した。

$action = $this->input->post('action');

if ($action == 'update') {

 $message = $this->input->post('message');

 $this->chat_model->update_message($id, $message);

}

モデルにupdate_message()メソッドを用意して、$idと$messageを渡せば、該当データ更新するようにしたい。

次は、モデルでupdate_message()メソッドを用意しよう。

 

Modelの改造

ファイルの内容を以下のように編集する。

// Update

public function update_message($id = 0, $message = '')

{

 $sql = "UPDATE talk SET message = ? WHERE id = ?";

 $param = array($message, $id);

 $this->db->query($sql, $param);

 return $this->db->affected_rows();

}

 

Modelの改造の解説

SQLの「UPDATE」を使えば、指定したレコード(1件分のデータ)を更新できる。

「UPDATE talk SET message = ? WHERE id = ?」で、talkテーブルmessageid指定して更新している。

 

CodeIgniterの「affected_rows()」メソッドは、更新した行数を返す。=成功なら1行、失敗なら0行となる。

 

補足

コントローラーの「$id = $id ? $id : $this->input->post('id');」という行は、$idの受け取り方が2パターンあるので、それに対応している。

編集ページの表示で、1回目の表示と、2回目以降の表示で、$idの受け渡し方が変わっている。

  • 1回目:URLに埋め込まれID番号をupdate($id = '')の引数$idで受け取っている。($this->uri->segment(3)で受け取るのと同じ)
  • 2回目以降:Formタグで送られてきた$idを$this->input->post('id')で受け取っている。

URLに埋め込む方法上記の1回目のような方法)は、ユーザー勝手に値をいじれるので、基本的には使わない方が良い。

 

まとめ

以上で、SQLの「UPDATE」を使った、データ更新ができた。

長々と説明したが、今回の大事な点は、SQLの「UPDATE」の使い方だ。

CodeIgniterの使い方や、Webサイトの作り方(FormタグなどのHTML知識)は、オマケ程度に見ておいて欲しい。

 

次回は、データを削除するSQLDELETE」の使い方を見てみよう。

 


anond:20181015215004 未経験からプログラマーなんだが全然からない

anond:20181016015826 増田プログラマー養成講座 その1 パソコンの用意

anond:20181016164341 増田プログラマー養成講座 その2 プログラムデータ+処理、プログラム言語の種類

anond:20181016180059 増田プログラマー養成講座 その3 構造プログラミングの基本(順次、反復、分岐

anond:20181016193144 増田プログラマー養成講座 その4 子ども向け教材「Scratch」で構造プログラミング練習

anond:20181017161003 増田プログラマー養成講座 その5 オブジェクトとは何か?

anond:20181017191404 増田プログラマー養成講座 その6 OOPの種類、PHPの準備

anond:20181019181549 増田プログラマー養成講座 その7 OOPの仕組み(前半)

anond:20181020230044 増田プログラマー養成講座 その8 OOPの仕組み(後半)

anond:20181022232327 増田プログラマー養成講座 その9 MVCフレームワークを使ってみよう

anond:20181023184616 増田プログラマー養成講座 その10 OOP参考書

anond:20181024214133 増田プログラマー養成講座 その11 データベースを使ってみよう

anond:20181026145516 増田プログラマー養成講座 その12 データベースの参考書

anond:20181028152656 増田プログラマー養成講座 その13 SQL文法

anond:20181031014212 増田プログラマー養成講座 その14 Webアプリの試作品作成

anond:20181101225335 増田プログラマー養成講座 その15 Webアプリの完成見本

anond:20181101230220 増田プログラマー養成講座 その16 Webアプリの完成見本(続き)

anond:20181104161900 増田プログラマー養成講座 その17 Webアプリの骨組み

anond:20181104233013 増田プログラマー養成講座 その18 SQLデータの追加と取得

anond:20181110120715 増田プログラマー養成講座 その19 SQLデータ更新 ←★今ここ★

anond:20181110182445 増田プログラマー養成講座 その20 SQLデータの削除

anond:20181024214737 増田プログラマー養成講座 コンテンツ一覧

2018-11-08

anond:20181108174005

amazonでは剥き出し流木などのアマゾン倉庫を経由できない商材は扱っていない(はず)

amazon倉庫では例外なくアマゾンロボが自動的商品棚を動かしている

まではいいとして、その先に人間がまだいる理由

アマゾンがその部門をまだ自動化できていない」だけで「アマゾン自動化できない」とかそういう話ではない。

単に機械リソースが足りてないとかそういう糞低レベルな話であって、これもヘタしたら2,3年のうちに順次アマゾン人間排除されてアマゾンの地で暮らすようになって結果ライダーへと変貌を遂げる可能だってある。

今は正にその「梱包人間」を挙って機械化するシーケンス上にあり、中国での倉庫業界では割とフル自動化を達成しているケースもあるって事だろうよ。

逆に言うと、amazonの規模が倉庫完全自動化になったらもう既にその辺の話は終わってるよw

2018-11-04

増田プログラマー養成講座 その17 Webアプリの骨組み

前回は、Webアプリの完成見本を先に見てみました。

今回は、Webアプリを作る途中の過程を見て、作る雰囲気を一緒に味わってみましょう。

 

フレームワーク使用ルール=「設定より規約」=手抜きをする仕組み

最近フレームワークは、「設定より規約」(CoC、convention over configuration)という発想で作られている。

フレームワーク規約使用ルール)に従うと、プログラマー作業量が減って、楽ができる。

 

設定より規約(convention over configuration)とは、開発者の決定すべきことを減少させ、単純にするが柔軟性は失わせないというソフトウェア設計パラダイム

使用しているツール実装した規約開発者の望む動作と一致していれば、設定ファイルを書く必要もない。実装規約と望みの動作が違っている場合必要動作を設定しなければならない。

 

最近フレームワークは「設定より規約アプローチ採用しているものが多い。

例えば、Ruby on Rails、Kohana、Grails、GrokZend FrameworkCakePHPSymfony などがある。

 

CodeIgniter使用ルール

CodeIgniter使用ルールは、マニュアルチュートリアル確認できる。

↑このページの「アプリケーションフローチャート」を見てみよう。

 

  1. 一番左の「index.php」が、Webアプリ入口になっている。(エントリーポイントフロントコントローラーパターン等ともいう)
  2. から2番目の上段「Routing」で、URLに応じて、仕事の振り分け先を決定する。(ディスパッチ、マッピングルーティング等ともいう)
  3. から4番目の「Application Controller」で、具体的な処理の指示を出す。
    1. Application Controllerは、「Model」に必要データを用意させる。
    2. Application Controllerは、「View」に表示用の画面を作らせる。
    3. Application Controllerが、index.phpに表示用の画面を渡す。
  4. 表示用の画面(最終的な処理の結果)を受け取った「index.php」は、ユーザーブラウザー)に画面を渡す。

 

 


 

それでは、CodeIgniterプログラマーが用意する部分のM(Model)とV(View)とC(Application Controller)を、骨組みから作ってみよう。

事前準備として、前々回と前回のWebアプリ完成見本を用意するところまでやっておこう。

 

スケルトンとは?

スケルトン(skeleton, 骨格)とは動物人間の骨格。

コンピュータプログラムコードの骨格部分。プログラムコード作成では、初期段階でスケルトン作成し、その後で詳細部分を肉付けしていく。

 

 

 

Application Controllerの骨組み

まずは、MVCのCの骨組みを作ろう。

Controllerは、ユーザーからリクエストを受け付けて、ModelViewに指示を出す監督です。

 

上記フォルダの中に「Welcome.php」というファイルを作る。(デフォルトであるはずなので、それを使ってOK

 

CodeIgniterルールで、Application Controllerを置く場所は「application/controllers」というフォルダになっている。

CodeIgniterルールで、一番最初に呼び出されるApplication Controllerは「Welcome.php」というファイルになっている。

→これは「C:\xampp\htdocs\waf\application\config\routes.php」という設定ファイルで決められている。

$route['default_controller'] = 'welcome'; // 別の名前にすれば変えられる。

 

「Welcome.php」の中身を以下にように変更する。

<?php

defined('BASEPATH') or exit('No direct script access allowed');

 

class Welcome extends CI_Controller

{

 // 初期画面

 public function index()

 {

  echo "Here is index()";

 }

 // 更新画面

 public function update()

 {

  echo "Here is update()";

 }

 // 削除画面

 public function delete()

 {

  echo "Here is delete()";

 }

}

これがチャットApplication Controllerとして動作する最小限の内容=骨格だ。

 

継承

class Welcome extends CI_Controller

という行に注目してみよう。

CodeIgniterで用意されてる「CI_Controller」クラス継承して、プログラマーが「Welcome」クラスを作ってる。

継承によって、フレームワークが用意してる様々な機能をWelcomeクラス内で使えるようになる。

 

URLリクエスト)とControllerの対応マッピング)のルール

「Welcome」クラスの中に、「index()」「update()」「delete()」という3つのメソッドを用意した。

CodeIgniterURLは、Action Controllerのクラス名やメソッド名とひもづけられている。

今回作るWebアプリだと、

「http://localhost/waf/クラス名/メソッド名」

という対応関係になっている。

(例)

http://localhost/waf/        →Welcomeクラスindex()メソッドが呼び出される。

http://localhost/waf/welcome/index  →Welcomeクラスindex()メソッドが呼び出される。

http://localhost/waf/welcome/update →Welcomeクラスのupdate()メソッドが呼び出される。

http://localhost/waf/welcome/delete →Welcomeクラスdelete()メソッドが呼び出される。

 

 

 

Viewの骨組み

次にMVCのVの骨組みを作ろう。

ビューは、表示する画面の部分です。HTMLWebページの構造を書きます

 

 

welcome_index.php編集

以下の内容にして保存する。

<?php defined('BASEPATH') OR exit('No direct script access allowed'); ?>

<!DOCTYPE html>

<html>

 <head>

  <meta charset="utf-8">

  <title>増田チャット</title>

  <base href="<?php echo base_url(); ?>">

 </head>

 <body>

  <h1>増田チャット</h1>

  <h2>新規投稿</h2>

 </body>

</html>

 

chat_update.php編集

以下の内容にして保存する。

<?php defined('BASEPATH') or exit('No direct script access allowed');?>

<!DOCTYPE html>

<html>

 <head>

  <meta charset="utf-8">

  <title>増田チャット</title>

  <base href="<?php echo base_url(); ?>">

 </head>

 <body>

  <h1>増田チャット</h1>

  <h2>編集</h2>

 </body>

</html>

 

chat_delete.php編集

以下の内容にして保存する。

<?php defined('BASEPATH') or exit('No direct script access allowed');?>

<!DOCTYPE html>

<html>

 <head>

  <meta charset="utf-8">

  <title>増田チャット</title>

  <base href="<?php echo base_url(); ?>">

 </head>

 <body>

  <h1>増田チャット</h1>

  <h2>削除</h2>

 </body>

</html>

 

Viewファイルの追加に合わせて、Controllerも一部変更します。

 

Welcome.php編集

<?php

defined('BASEPATH') or exit('No direct script access allowed');

 

class Welcome extends CI_Controller

{

 public function __construct()

 {

  parent::__construct();

  $this->load->helper('url');

 }

 

 // 初期画面

 public function index()

 {

  $this->load->view('welcome_index');

 }

 

 // 更新画面

 public function update()

 {

  $this->load->view('chat_update');

 }

 

 // 削除画面

 public function delete()

 {

  $this->load->view('chat_delete');

 }

}

 

(変更点の説明

コンストラクターの追加

コンストラクター「__construct()」は、クラスからインスタンスが作られるとき自動的に実行されるメソッドだ。コンストラクターは、初期化最初にやっておくべき下準備を書いておく。

$this->load->helper('url');

CodeIgniterには、リンクの表示を補助する「URLヘルパー」という機能が用意されている。

上記のように書くとURLヘルパーを呼び出して、使えるようになる。

Viewファイルの以下の行でURLヘルパーを使っている。=「base_url()」という関数URLヘルパーの1つ。

<base href="<?php echo base_url(); ?>">

 

ビュー読み込みメソッドの追加

$this->load->view('welcome_index');

というメソッドによって、Viewファイルの「welcome_index.php」を呼び出し、画面を出力します。

 

これでMVCのCとVの骨組みができた。

今の段階でWebブラウザーで各ページを表示させると、各Viewファイルの中身が表示される。

 

 

 

Modelの骨組み

次にMVCのMの骨組みを作ろう。

モデルは、具体的な処理内容(ロジック)を書いて、データを読み書きする部分です。

データベースを操作するSQL文もモデルに書きます

 

上記フォルダの中に「Chat_model.php」というファイルを作り、以下の内容にして保存する。

<?php

defined('BASEPATH') or exit('No direct script access allowed');

 

class Chat_model extends CI_Model

{

 public function __construct()

 {

  parent::__construct();

  $this->load->database();

 }

}

 

CodeIgniterで用意されてる「CI_Modelクラス継承して、プログラマーが「Chat_modelクラスを作ってる。

「Chat_modelクラスコンストラクターには、以下のように書いている。

$this->load->database();

これは、データベースを使用する準備だ。

 

Modelの追加に合わせて、さらにControllerも一部変更します。

 

Welcome.php編集

<?php

defined('BASEPATH') or exit('No direct script access allowed');

 

class Welcome extends CI_Controller

{

 public function __construct()

 {

  parent::__construct();

  $this->load->model('chat_model');

  $this->load->helper('url');

 }

 

 // 初期画面

 public function index()

 {

  $this->load->view('welcome_index');

 }

 

 // 更新画面

 public function update()

 {

  $this->load->view('chat_update');

 }

 

 // 削除画面

 public function delete()

 {

  $this->load->view('chat_delete');

 }

}

 

コンストラクター

$this->load->model('chat_model');

と書いて、「Chat_model」というモデルを読み込むようにした。

これで、モデルに用意するいろんな機能コントローラーで使えるようになる。

 

 

 

以上で、MVCの骨組み(スケルトン)だけを作成するプロセスを見ていきました。

まだ中身はスカスカで、何も機能がついてませんね。

次回は、データベースのCRUD操作を行なって、チャットメッセージを追加/取得/変更/削除する機能実装してみましょう。

 


anond:20181015215004 未経験からプログラマーなんだが全然からない

anond:20181016015826 増田プログラマー養成講座 その1 パソコンの用意

anond:20181016164341 増田プログラマー養成講座 その2 プログラムデータ+処理、プログラム言語の種類

anond:20181016180059 増田プログラマー養成講座 その3 構造プログラミングの基本(順次、反復、分岐

anond:20181016193144 増田プログラマー養成講座 その4 子ども向け教材「Scratch」で構造プログラミング練習

anond:20181017161003 増田プログラマー養成講座 その5 オブジェクトとは何か?

anond:20181017191404 増田プログラマー養成講座 その6 OOPの種類、PHPの準備

anond:20181019181549 増田プログラマー養成講座 その7 OOPの仕組み(前半)

anond:20181020230044 増田プログラマー養成講座 その8 OOPの仕組み(後半)

anond:20181022232327 増田プログラマー養成講座 その9 MVCフレームワークを使ってみよう

anond:20181023184616 増田プログラマー養成講座 その10 OOP参考書

anond:20181024214133 増田プログラマー養成講座 その11 データベースを使ってみよう

anond:20181026145516 増田プログラマー養成講座 その12 データベースの参考書

anond:20181028152656 増田プログラマー養成講座 その13 SQL文法

anond:20181031014212 増田プログラマー養成講座 その14 Webアプリの試作品作成

anond:20181101225335 増田プログラマー養成講座 その15 Webアプリの完成見本

anond:20181101230220 増田プログラマー養成講座 その16 Webアプリの完成見本(続き)

anond:20181104161900 増田プログラマー養成講座 その17 Webアプリの骨組み ←★今ここ★

anond:20181104233013 増田プログラマー養成講座 その18 SQLデータの追加と取得

anond:20181024214737 増田プログラマー養成講座 コンテンツ一覧

2018-11-01

増田プログラマー養成講座 その16 Webアプリの完成見本(続き)

anond:20181101225335 増田プログラマー養成講座 その15 Webアプリの完成見本」の続きです。

 

index.php編集

Webサーバーの時間設定がズレていると、メッセージ作成したときに、作成日時もズレてしまます

(=12時に投稿したメッセージが、3時に投稿したことになってしまう、等。)

時間がズレてた場合は、Webサーバーの時刻を一時的に変更する処理を追加しておきましょう。

 

index.phpファイルの先頭に以下の内容を追加します。

上記フォルダの中の「index.phpファイルを開いて、先頭付近(2行目辺り)に以下の内容を追加します。

<?php

date_default_timezone_set('Asia/Tokyo'); // 2行目あたりに追加

 

動作確認

以上で、簡易チャットWebアプリが設置できました。

ブラウザーアクセスして、動作確認してみましょう。

 

 

以上で、データベースを利用したWebアプリが用意できました。

コピー作成しただけでは、プログラム意味が分からないと思うので、次回以降プログラムの部分を解説してみます

次回は、

を見ていきましょう。

 


anond:20181015215004 未経験からプログラマーなんだが全然からない

anond:20181016015826 増田プログラマー養成講座 その1 パソコンの用意

anond:20181016164341 増田プログラマー養成講座 その2 プログラムデータ+処理、プログラム言語の種類

anond:20181016180059 増田プログラマー養成講座 その3 構造プログラミングの基本(順次、反復、分岐

anond:20181016193144 増田プログラマー養成講座 その4 子ども向け教材「Scratch」で構造プログラミング練習

anond:20181017161003 増田プログラマー養成講座 その5 オブジェクトとは何か?

anond:20181017191404 増田プログラマー養成講座 その6 OOPの種類、PHPの準備

anond:20181019181549 増田プログラマー養成講座 その7 OOPの仕組み(前半)

anond:20181020230044 増田プログラマー養成講座 その8 OOPの仕組み(後半)

anond:20181022232327 増田プログラマー養成講座 その9 MVCフレームワークを使ってみよう

anond:20181023184616 増田プログラマー養成講座 その10 OOP参考書

anond:20181024214133 増田プログラマー養成講座 その11 データベースを使ってみよう

anond:20181026145516 増田プログラマー養成講座 その12 データベース参考書

anond:20181028152656 増田プログラマー養成講座 その13 SQL文法

anond:20181031014212 増田プログラマー養成講座 その14 Webアプリの試作品作成

anond:20181101225335 増田プログラマー養成講座 その15 Webアプリの完成見本

anond:20181101230220 増田プログラマー養成講座 その16 Webアプリの完成見本(続き) ←★今ここ★

anond:20181104161900 増田プログラマー養成講座 その17 Webアプリの骨組み

anond:20181024214737 増田プログラマー養成講座 コンテンツ一覧

2018-10-31

重要フィーチャーフォン向け楽天Edyアプリ新規ダウンロード・初期設定(新規発行)の終了のご案内

フィーチャーフォン向け楽天Edyアプリ新規ダウンロードおよび初期設定(新規発行)を2018年10月31日より順次終了とさせていただきます

対象機種、新規ダウンロードおよび初期設定(新規発行)の停止予定日等の詳細は下記をご確認ください。

https://edy.rakuten.co.jp/info/2018/0801_maintenance/

新規ダウンロードおよび初期設定(新規発行)の停止予定日>

NTTドコモ2018年10月31日予定

KDDIau) :2018年10月31日予定(初期設定(新規発行)の停止。※新規ダウンロードは既に終了しております。)

SoftBank2019年1月31日予定

※既にご利用中のお客様は、引き続き楽天Edyサービスをご利用可能です。

あと30分!

増田プログラマー養成講座 その14 Webアプリの試作品作成

前回は、SQL文法を学びました。

今回は、データベースを使ったWebアプリ制作を通じて、SQLの使い方を確認してみましょう。

 

Webアプリとは?

WebブラウザーGoogle Chromeなど)で動作するアプリのこと。

ウェブアプリケーションWeb application)は、インターネット(もしくはイントラネット)などのネットワークを介して使用するアプリケーションソフトウェアである

多くの場合、これらのアプリケーションは、Webブラウザ上で動作するプログラミング言語(たとえばJavaScript)によるプログラムWebサーバ側のプログラム協調することによって動作し、ユーザはそれをWebブラウザ上で使用する。

 

準備

Windowsパソコンを使ってたら、「XAMPP」を使ってすぐにWebアプリを試作できる。

以前の講座(その6、その9)を参考にして、XAMPPCodeIgniterを用意しておこう。

 

Webアプリ制作の流れ

最近アプリの作り方は、「デザインスプリント」と呼ばれる方法流行ってます。本やネット情報がたくさんあるので調べてみよう。

 

ざっくりと、以下のような流れです。

  1. アイデア企画)を出す。
  2. アイデアを基に、ペーパープロトタイプ(紙の試作品)を作る。=アナログの試作品ノートなどにアプリの完成予想図、画面などを描く。
  3. ペーパープロトタイプを基に、動くモック(ハリボテ)を作る。=デジタルの試作品
  4. モック画面を基に、実際のプログラム作成して、アプリを完成させる。
  5. 完成したアプリを改良していく。

それでは順番にやってみよう。

 

アイデア

以前にデータベース練習をしたとき、「後で簡単チャット(おしゃべり)ができるWebアプリ作ってみたいと思う。」と言ったので、今回のアイデアは「チャットを作る」にしよう。

 

ペーパープロトタイプ

チャット必要な画面は3つある。

  1. トップページの画面(新規投稿投稿一覧がある)
  2. 投稿更新する画面
  3. 投稿を削除する画面

ノートなどに描いて画面をデザインしてみよう。

 

モック

Webページを作るには、HTMLCSS知識必要だ。HTMLCSSを使ったことがなければ、本やネット情報勉強してみよう。

今回はCSSを使わずに、HTMLだけでシンプルWebページを作ってみよう。(練習から余計なもの無駄を省きたい。)

 

Webページ制作ツール

ブラウザーテキストエディター(またはIDE)が必要です。

特にこだわりがなければ、Microsoftの「Visual Studio Code」という無料IDE統合開発環境)を使ってみよう。

インストール方法や使い方、メニュー日本語化のやり方は、検索して調べてみよう。

 

フォルダを作る。

デスクトップに「mock」というフォルダを作る。

 

ファイルを作る。

「mock」フォルダの中に

  1. index.html」 (トップページの画面)
  2. 「edit.html」 (投稿更新する画面)
  3. delete.html」(投稿を削除する画面)

という3つのファイルを作る。

テキストエディターで保存するとき文字コードを「UTF-8」にしておく。

 

ファイルの中身を編集する。

index.htmlファイルエディターやIDEで開き、以下のような内容に編集して保存します。(コピペする場合、行頭の字下げ(インデント)の全角スペースを半角スペースに置換して下さい。)

<!DOCTYPE html>

<html>

 <head>

  <meta charset="utf-8">

  <title>増田チャット</title>

 </head>

 <body>

  <h1>増田チャット</h1>

  <h2>新規投稿</h2>

  <form>

   <label>メッセージ</label>

   <input type="text" name="message">

   <button>投稿する</button>

  </form>

  <h2>投稿一覧</h2>

  <table border="1" cellpadding="5" cellspacing="0" bordercolor="#CCCCFF">

   <tr>

    <th>No.</th>

    <th>投稿日時</th>

    <th>メッセージ</th>

    <th>編集</th>

    <th>削除</th>

   </tr>

   <tr>

    <td>3</td>

    <td>2018-10-20 12:34:56</td>

    <td>Webアプリを作ってみる!</td>

    <td><a href="edit.html">編集</a></td>

    <td><a href="delete.html">削除</a></td>

   </tr>

   <tr>

    <td>2</td>

    <td>2018-09-10 22:33:44</td>

    <td>今日からプログラミングを勉強します。</td>

    <td>編集</td>

    <td>削除</td>

   </tr>

   <tr>

    <td>1</td>

    <td>2018-08-01 11:22:33</td>

    <td>こんにちは!</td>

    <td>編集</td>

    <td>削除</td>

   </tr>

  </table>

 </body>

</html>

 

「edit.htmlファイルエディターやIDEで開き、以下のような内容に編集して保存します。(コピペする場合、行頭の字下げ(インデント)の全角スペースを半角スペースに置換して下さい。)

<!DOCTYPE html>

<html>

 <head>

  <meta charset="utf-8">

  <title>増田チャット</title>

 </head>

 <body>

  <h1>増田チャット</h1>

  <h2>編集</h2>

  <p>メッセージを変更して「更新する」ボタンを押してください。</p>

  <form>

   <label>メッセージ</label>

   <input type="text" name="message" value="Webアプリを作ってみる!">

   <button>更新する</button>

  </form>

  <p><a href="index.html">戻る</a></p>

 </body>

</html>

 

delete.htmlファイルエディターやIDEで開き、以下のような内容に編集して保存します。(コピペする場合、行頭の字下げ(インデント)の全角スペースを半角スペースに置換して下さい。)

<!DOCTYPE html>

<html>

 <head>

  <meta charset="utf-8">

  <title>増田チャット</title>

 </head>

 <body>

  <h1>増田チャット</h1>

  <h2>削除</h2>

  <p>以下のメッセージを削除しますか?</p>

  <form>

   <p style="background-color:lightpink">Webアプリを作ってみる!</p>

   <button>削除する</button>

  </form>

  <p><a href="index.html">戻る</a></p>

 </body>

</html>

 

以上でモックWebページ(HTMLファイル)ができました。

Webブラウザーで「index.html」を開いてください。「編集」や「削除」、「戻る」をクリックして、チャットの画面を確認してください。

 

モックを作ってからWebサイトを作る方法

実務では「仕様書」という書類を大量に作る場合もありますが、時間と労力の無駄になっている場合が多々あります。(紙の仕様書はあまり使われる機会がない)

紙の仕様書アナログ)の代わりに、モック仕様書デジタル)として使うと、その後の段階がスムーズになります

どうしても紙でなければ困る場合以外は、モックをそのまま仕様書として使ってみましょう。

 

プロトタイプ作成ツール

モック(動くハリボテ)を作るための便利なツールがいろいろあります

 

 

 

ちょっと長くなったので、モックを基に機能実装プログラミング)するのは次回にしましょう。

 


anond:20181015215004 未経験からプログラマーなんだが全然からない

anond:20181016015826 増田プログラマー養成講座 その1 パソコンの用意

anond:20181016164341 増田プログラマー養成講座 その2 プログラムデータ+処理、プログラム言語の種類

anond:20181016180059 増田プログラマー養成講座 その3 構造プログラミングの基本(順次、反復、分岐

anond:20181016193144 増田プログラマー養成講座 その4 子ども向け教材「Scratch」で構造プログラミングの練習

anond:20181017161003 増田プログラマー養成講座 その5 オブジェクトとは何か?

anond:20181017191404 増田プログラマー養成講座 その6 OOPの種類、PHPの準備

anond:20181019181549 増田プログラマー養成講座 その7 OOPの仕組み(前半)

anond:20181020230044 増田プログラマー養成講座 その8 OOPの仕組み(後半)

anond:20181022232327 増田プログラマー養成講座 その9 MVCフレームワークを使ってみよう

anond:20181023184616 増田プログラマー養成講座 その10 OOP参考書

anond:20181024214133 増田プログラマー養成講座 その11 データベースを使ってみよう

anond:20181026145516 増田プログラマー養成講座 その12 データベース参考書

anond:20181028152656 増田プログラマー養成講座 その13 SQL文法

anond:20181031014212 増田プログラマー養成講座 その14 Webアプリの試作品作成 ←★今ここ★

anond:20181101225335 増田プログラマー養成講座 その15 Webアプリの完成見本

anond:20181024214737 増田プログラマー養成講座 コンテンツ一覧

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