PGninjaのブログ

技術系のブログです。

Laravelチュートリアルをアレンジ

自分なりに下記のページのチュートリアルをアレンジしてみました。

 

paiza.hatenablog.com

 

f:id:PGninja:20191026133355p:plain

アレンジ前

 

f:id:PGninja:20191026133429p:plain

アレンジ後

 

変更内容

  • 各部を英語から日本語に
  • 追加日時を表示するように変更

チュートリアルをアレンジするだけでも

とてもいい学習になります。

ちなみにこのチュートリアルはとてもわかりやすいですし

Laravel初心者の私でもスムーズに進めることができたので

これからLaravelを学習してみたいという方にかなりオススメです!

久しぶりにEclipseを起動してみた

ふとEclipseの存在を思い出し起動してみることに。

起動してみると、

f:id:PGninja:20191025131237p:plain

Eclipse 4.7

なんとも懐かしいPleiadesのカスタムスプラッシュ画面が表示された。

さらに過去のスプラッシュ画面はというと、

f:id:PGninja:20191025131533j:plain

Eclipse 3.5 ~ 3.8

f:id:PGninja:20191025131749j:plain

Eclipse 4.2

f:id:PGninja:20191025131810j:plain

Eclipse 4.6

どれも懐かしい印象を受ける。

こうして見てみると間の4.2のデザインが少し古く見えるのは気のせいだろうか。

ちなみに最新と思われるものは、

f:id:PGninja:20191025132003p:plain

Eclipse 4.8

非常にスタイリッシュな感じだ。

その後4.7を起動し、どんなコードを書いていたかを見てみた。

f:id:PGninja:20191025132217p:plain

Hello,World!

動きそうなものはこれぐらいしか無かった。

あまり覚えていないけれども、ただ最新版がリリースされたということで

ちょっと使ってみたかっただけなのだろうか・・・。

以上、久しぶりにEclipseを起動してみたの記事でした。

Rust(プログラミング言語)について知ったこと

  • 2015年にMozzillaから1.0版が発表された
  • 2019年時点で最も愛されているプログラミング言語だが学習難易度が高いと考えられている
  • 実行速度はC言語とほぼ同等とされている
  • 最も有名なウェブブラウザのひとつであるMozilla FirefoxはRustを使用して開発されている
  • オープンソースのコミュニティベースで開発が進められており、Rust開発チームのプロジェクトのソースコードは全てgithubで一般公開されている。
  • 小さなアプリケーションの実装についてはGoの方が効率がよいと考えられている。

今の自分が作れそうなWebサービス

ToDo管理サービス

必要最低限の機能と少しだけ凝ったデザインなどを実装すると面白そう。

Twitterクローン

何か作りたいけど何を作ったらいいかわからないという時によく聞くワード。

Instagramクローン

時代の流行を押さえておくという意味ではありだと思う。

 

これら3つを見て思うこと

どれかひとつを作れば他のふたつもスムーズに作ることができそう。

全部をひとつの言語&フレームワークの組み合わせで作るのもいいし、

それぞれ違う言語&フレームワークの組み合わせで作るのもよさそう。

過去に作った物を振り返る

目次

はじめに

わたしは2015年4月~2019年3月までの間

京都コンピュータ学院京都駅前校

情報科学情報科学コースに在籍しておりました。

ここでは在籍中に取り組んだ成果物と学んだことについて

記しておこうと思います。

成果物:JustEatTime(制作時期:2017年4月~2018年2月)

※現在は稼働しておりません。

play.google.com

JustEatTimeは営業している飲食店を視覚的に、わかりやすく教えてくれます。
複雑な操作は一切不要です。普段、地図アプリなどを使う感覚でご使用ください。
また、地図に表示されたマーカーをタップすることで飲食店の基本情報を確認
することができます。さらに詳しい情報を閲覧したい場合は、ぐるなびの紹介
ページへのリンクをタップすることで飲食店の詳細を確認することができます。
このアプリは、ぐるなびAPIGoogle Maps APIを使用しています。
(GooglePlayStoreのページより引用)
 
このサービスは学内で複数人がチームとなり、6時間×30回という時間の中で
ひとつのWebサービスを完成させるという授業で制作したものです。
 
当初なぜこのサービスを作ろうかと思ったかというと、みなさんもご経験が
あるかと思いますが、Googleで自分の周囲の飲食店を検索するといくつかの
お店の情報とそれらお店の所在地がマップ上にピンで表示されますよね。
確かにこれはわかりやすいのですが、営業しているかどうかを判断することが
少し難しい点があることがわかってきました。理由としては、営業時間の
情報が無いお店があることや、営業中かどうかの表示が文字と時刻だけで
あるために何十件ものお店を表示した際には少し使いにくいと感じたからです。
そこで私が所属していたチームで意見を出し合い、「今自分の周りで営業
している飲食店がどこにあるのかが一目でわかりやすく表示できるサービス」
というテーマで開発を行うことになりました。
 
私はサーバサイドのPHPを担当していましたが、開発の初期段階でつまづき、
その後も何度かつまづきましたが最終的にはWeb版と
アプリ版(といってもいわゆるリンクアプリ)をリリースすることができました。
 
 

f:id:PGninja:20191025084839p:plain

アプリ起動時の画面

 

 

f:id:PGninja:20191025085527p:plain

緑色のアイコンが営業中、赤色のアイコンが営業していない状態を表しています
 
 
 
 

f:id:PGninja:20191025085822p:plain

メニューの部分です
 

開発する上で学んだこと

問題やエラーは頻繁に発生する

基本的には開発をしている途中で問題やエラーを抱えていなかった時期は

一度も無かったと記憶しています。ひとつ問題を解決すると次の問題が、

それを解決するとまた次の問題が・・・という感じでした。エラーに関しては

酷い時には解決に3、4時間を要したこともありました。

ですがそれらを解決することが最終的には成果物という形に結び付くと

チーム全体が考えていたことが良かったと思います。

 

やたらと機能を盛り込みすぎないこと

ある知り合いの方から聞いた話ですが、「技術があるからといって機能を

あれもこれもと追加して、結局何がやりたいサービスなのかわからないモノを作る

学生がいる」ということがたまにあるようでした。

私はこの話をこの開発に取り組む前に聞いていたため、あまり機能を増やさないで

おこうと考えていました。しかしいざ作業をしていると、あれもいいなこれもいいな

という風にまさに聞いたことのあるような状態になることがしばしばありました。

せっかくいいアイデアで明確な目的があるサービスでも、そのコアとなる部分の

クオリティが下がる原因が他の機能を追加するという時間だとすると、優先すべきは

そっちではないなと考えていました。

 

とりあえず相談してみることの大切さ

私のチームはフロントエンドとバックエンドが各2人の計4人のチームでした。

私はバックエンドの作業をしていると度々エラーに悩まされることがありました。

そんな時、自分の性格上そうだったのか、人には相談せず一人で黙々と向き合って

いました。しかしある時、どうしても解決できないと感じた私は少し作業が軽く

なっていたフロントエンド担当の方に相談をしてみることにしました。するとその

方は「ここの記述がおかしいんじゃない?」とか「一回これでテストしてみてダメ

だったらまた聞いてよ」といった感じでスムーズに対応してくれました。結果的に

そのエラーは解決し、その方とのコミュニケーションも以前より増えることに

なりました。この経験から、どういう反応が返ってくるかはわからないけど、

とりあえず誰かに相談してみることの大切さを学びました。

 

まとめ

このチーム開発ではAPIプログラミングの知識や飲食店のジャンルなどに詳しく

なったこともありますが、一番成長できたと感じたのは、誰かに聞くという

ことです。ひとつの相談からチーム全体でその問題に取り組むということも

ありました。そのキッカケを作れたという自信も身につきました。

その結果、最終的にサービスをリリースできた達成感をチームで共有

することができ、いい経験のひとつになったと思っています。

 

Go言語について知ったこと

・Go言語はGoogleが開発したコンパイラ言語

・Go言語を作ったメンバーの中にはC言語を作った方がいるようだ

・シンプルな言語を目指して作られたため、習得が比較的容易

・ループ処理はfor文のみがサポートされており、while文などは使えない

・Go言語での開発にはフレームワークが使用されないことが多いようだ

 

Go言語は2019年時点で人気の高いプログラミング言語のひとつであり、

コミュニティも活発に活動しているように感じた。