これからTwitterを作って行くところを少しずつ公開していきたいと思う。
下記のような環境で作成していく。
Djangoはpythonのフレームワーク。
慣れているCakePHPの方が早いが面白くないのでDjangoを練習しつつ作成。
(python3.5 + Django1.9.7)
ちなみにtwitterはRuby on RailsからJavaVMに移行していっている様で、pythonとは何の関係もなさそう。
ただ、Instagramはdjangoで作成されているらしい。
また、pythonはGoogleでよく利用されているし、良い言語であることは間違いなさそう。
実際に、使ってみてまだちょっとしか経っていないがかなり好きになってきている。
ひとまず現状の理由としては下記のようなものがあげられる。
adminページがあり、DBやモデルの作成が進んで行くと勝手に管理画面が作られていく。
仕様の細かい案件等では使いづらいかもしれないが、
こうやって一人で勝手に作っていったり要件のゆるい案件では非常に役立つし無駄な工数削減になる。
公式のドキュメントにはわりと欲しい情報が載っているし、
検索すればそこそこすぐに情報が見つかりハマりにくい気がする。
もしかすると英語前提かも知れないがプログラムなのであまり関係ないだろう。
何かやりたいことがある時、古い情報が見つかると、「面倒だな…」と思うことがあるが、
最新の情報をよくよく見ていると結構洗練されていたりする。
最新のWEB開発が好きな人は結構ハマるのではないかと思う。
慣れていないと環境構築が結構面倒かもしれない。
今のところWindowsでMySQLに接続する方法が分かっていなかったりする。
(サーバーにあげて動作確認している)
Twitterは基本的にSPAっぽいので、基本的にjavascriptで作成し、サーバー側はAPIとして動かしていく必要がある。
そうなるとReactかAngular2になってくると思うが、今回はちょっと型管理が面倒なのでReactを選んだ。
サーバーとの通信はsuperagentを利用し、webpackでビルドする。
とりあえず、webpackで1ファイルになってくれるのはやはり非常に楽。
多くのストレスを軽減してくれる。
UIはmaterial-uiを使用する。
よく出来ていて、今回の様なアプリケーションの場合はすごく使いやすい。
Djangoで作成するdummyのtwitterなのでDumitterとする。
可能な限り似せる。ただしすぐできる範囲。面倒なことは一切やらない。
(ほぼmaterial-uiそのまま)
あと記事の方針としてはなるべく進めていく状況や難しい箇所の説明を入れたいので、
他で調べれば出てくるような細かい技術は解説しない予定。
あくまで娯楽であり教材ではない。
https://alphabrend.sakura.ne.jp/dumitter/
(さくらレンタルで無理やり動かしてるので非常に重いです)
次回から実際に開発状況を公開していく予定。
第1回 | Twitterを作る 第1回 概要 |
第2回 | Twitterを作る 第2回 認証 |
第3回 | Twitterを作る 第3回 投稿 |
第4回 | Twitterを作る 第4回 コンポーネント構成考察 |
第5回 | Twitterを作る 第5回 フォロー |
Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。
また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!
こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?
コメント