質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

FuelPHP

FuelPHPは、軽量高速で開発が可能なPHPのWebアプリケーションフレームワークです。

Q&A

解決済

5回答

2399閲覧

プログラミングを最も効率よく学べるようになるには?

growthposition

総合スコア98

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

FuelPHP

FuelPHPは、軽量高速で開発が可能なPHPのWebアプリケーションフレームワークです。

0グッド

2クリップ

投稿2016/07/24 02:27

プログラミング初心者でございます。

皆様の知見をお借りしたく存じます。
現在、プログラミング初心者なのですが
php、cakephp、fuelphp、DB周り、サーバーインフラのあたりの対応を仕事上任されております。

上記をなるべく効率よく学び、実践で使用するには
どのような手順、学び方、意識で取り組みを行って行けばよろしいでしょうか

初心的な質問かつ、抽象的で大変申し訳ございませんが、
何卒宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

matobaa

2016/07/26 02:27 編集

マルチポストであることに言及してください: http://ja.stackoverflow.com/questions/27829 こっちで解決したのなら、あっちは閉じるなりしてください。放置しないこと。回答してくれる有識者は無限にいるわけではないのです。無駄遣いしないように。
growthposition

2016/07/26 02:52

ご指摘ありがとうございます。 気遣いが足りませんでした。 今後このようなことがないよう徹底いたします。
guest

回答5

0

ベストアンサー

インフラ組む所から勉強するのであれば、XamppやMampは悪手です。
Vagrant+VirtualBOXで仮想のLinux環境を立ち上げて、ちゃんとしたLAMP環境を作る勉強をしましょう。
(Windows+IISでの構築以外は行わないなら話は別ですが…WindowsでPECL導入は超辛いです)

Vagrant+VirtualBOXはフォルダ共有機能があるので、
ローカルでファイルを編集してサーバーで動作のチェックをすることも簡単に行なえます。

LAMP環境さえ立ち上げてしまえば、CakePHPが提供しているbakeコマンドや
FuelPHPが提供しているOilコマンドがそのまま使えるのでスケルトンプロジェクトをぱぱぱっと作って気軽に始める事が出来ます。
(何も知らない所からフレームワークの概念から使い方、フォルダの切り方を学んでいくには相当のパワーが必要かと思いますが…)


Web上の記事は上級者の方の記事以外は信頼できません。

何も知らない初学者が「PHP ブログ 作り方」でググッてコピペして出来たような記事が大量に存在しています。
セキュリティが糞、バージョン古くて動かない、そもそもテストしてないから動かないコードだらけです。
要するに鵜呑みにせず、自分の頭でちゃんと考えて判断してください。

絶対に目を通すべきサイトを2つ紹介しておきます。

PHP Right Way
PHPで覚えるべき情報が体系的にまとめられたサイトです。
初心者から上級者まで、PHP自体に卒業するまで一生学習していける深いサイトです。
今の自分に必要な知識を探すのにピッタリで、ここで見聞きした単語をぐぐっていけば良いです。

PHP公式サイト
PHPが他の言語に誇れる事の一つが公式サイトの充実です。
全ての関数が用例込みで紹介されており、不具合やセキュリティ上よろしくない関数は警告が出て教えてくれます。

調べ物や回答を頂いた時に、見知らぬ関数を見つけた場合は必ず公式サイトの右上部の検索ボックスに入力して調べる癖を付けてください。
最初は何が書いてあるかよくわかないかもしれませんが、習慣化していると必ず読めるようになってきます。

空き時間でArray関係の関数を探すとプログラミングの効率が良くなります。
PHPでプログラミングすることに慣れてきたら、何気なく使っているArrayやClass等を公式サイトで見てみると新しい発見があります。

投稿2016/07/24 04:58

miyabi-sun

総合スコア21158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

growthposition

2016/07/25 06:26

ありがとうございます。 上記2サイトをもとに進めてまいります!
guest

0

私も人にアドバイスできる実力がないのですが、過去の自分に教えてあげたい情報を書いていきます。

「効率よく学び、実践で使用」するには、自分で何かを作ることが一番いいと思います。
作るといっても最初は何を作るかまで自分で考えなくていいです。
参考書を理解しながら、同じものを作っていけばいいと思います。

学習する順序

順序としては次の通りです。
0. PHPの入門
0. PHPとMySQL(MariaDB)を使うウェブアプリケーションの作成
0. フレームワーク入門(MVC)
0. 実際にフレームワークを使ってウェブアプリケーションの作成
0. 全体的に理解を深める

おすすめの参考書など

上記の順序に対応しておすすめする参考書・マニュアルは次の通りです。
0. いきなりはじめるPHP ワクワク・ドキドキの入門教室
0. 気づけばプロ並みPHP ショッピングカート作りにチャレンジ!
0. PHPサーバーサイドプログラミングパーフェクトマスター
0. 各フレームワークのマニュアル
0. パーフェクトPHP

上記順序・参考書への所見

順序1が個人的には最もつまらないと思います。あくまで入門なので。

順序2になると、ショッピングカートのシステム(Amazonのようなもの)を作るので楽しく感じられます。
会員登録・ログイン・ショッピングカート機能を作るのでかなり実践的な内容です。
MySQLとのやり取りやセッションについても学べます。
また、セキュリティについての意識も徐々に高めていきます。

順序3ではPHPの基礎からフレームワーク作成まで扱っているので、復習から応用まで学べます。
実際のフレームワークを使うまでの橋渡しの内容です。
前半は飛ばしてもかまいませんが、クラスを扱うところ辺りからはしっかりと読み進めるべきです。

順序4では実際にCakePHPやFuelPHPといったフレームワークを使います。
まずはチュートリアルを通してウェブアプリケーションを作ってみましょう。
コピペから始まり、部分的に変更して挙動を確かめていきます。
チュートリアルが終わったら自分で簡単なサイトを作ってみましょう。

順序5では更に理解を深めます。
中級者以上を対象としていて、PHPの理解を深めるのに役立ちます。
逆に言うと初学者が読んでもちんぷんかんぷんです。
パーフェクトPHPは2010年発売の本なので少し古いですが、順序5までやってきた方なら古い情報とそうでない情報の見極めをしつつ、役に立つ情報を学べると思います。

意識すべきこと

  • コードを書く際は焦らず少しずつ積み上げていきましょう。すべてのコードを一度に実行するのではなく、少しずつ動く部分を増やしていきます。
  • エラーを恐れず、エラーメッセージをしっかりと読んで対処しましょう。答えはエラーメッセージにあります。
  • 常にマニュアルを参考にしましょう。大体必要なことはマニュアルに書いてあります。

追記

データベースに関しては、
「達人に学ぶDB設計徹底指南書」
という本がかなり参考になります。
上記順序4のあたりで読むのがベストかと思います。

投稿2016/07/24 04:05

編集2016/07/24 04:12
coba-coba

総合スコア1409

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

growthposition

2016/07/25 06:26

こちら詳細なご回答ありがとうございます。 上記のステップを頭に加えつつ精進してまいります!!
guest

0

どの方法が、個人にとって最適かと言われても正直分からないので、泥臭いbetterな方法を

理解する

  • 動作している実物を見ること
  • 見た上で、動作、不明な箇所を小さな単位リストアップ
  • 各種APIリファレンス等で不明点を潰していく

コーディング

  • 基本に忠実(インデントを揃える、コーディング規約を守る、 マジックナンバーの回避)

「困難は分割せよ」です。

投稿2016/07/24 03:27

Ryo

総合スコア507

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

growthposition

2016/07/25 06:27

ご回答ありがとうございます。 >「困難は分割せよ」です。 こちら日常フローに加えます!
guest

0

新しいことに挑戦するときってモチベーションが大事ですよね。
で、このような質問をされるということはやる気が少なめ?

例えば、ちょっとしたご褒美を自分に用意するとか、
難しくないことからトライしていくとか、
軽く運動してから始めるとか。

築山節さんが何冊か出されている本は参考になると思います。

投稿2016/07/24 12:48

takasima20

総合スコア7458

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

growthposition

2016/07/25 06:23

ご回答ありがとうございます。 築山節さん調べてみます!
guest

0

「学問に王道なし」

どのような学習でもまずは、自分がどのような勉強の仕方が向いているのか理解していなければ身に付きにくいと思います。

本から学ぶか、学校に行くのか、人に説明してもらうのがいいのか人それぞれ向き不向きがあります。
今まで勉強してどのような方法が効率が良かったですか?
それがわからないのならそのような本はたくさん出ているのでまずそちらを調べましょう。
(わかっていないから効率よくという質問をしているのだと思います)

いずれにしても人がものを覚えて理解するプロセスはある程度決まっています。

「手を動かせ」読んだだけのことはすぐ忘れます。
「分かるまで繰り返せ」 一度やっただけのことはすぐ忘れます。
「四六時中考えよ」能力の多少はあれど、どんなことでも取り組んだ時間に応じて身につきます。

理解するだけではなく咀嚼するまで徹底的にやりましょう。
(例えば、本でif文が出てきて、例文を真似して終わりでは身につきません、
少なくとも10通りくらいは自分でバリエーションを考えて書いてみましょう)

色々なことに手を出すのではなく、1つか2つに絞りましょう。
質問に出ている中では、まずPHPとDBに集中するのが良いと思います。

遠回りなように思えても結局それしか無いと思います。

仕事の時間だけではなく自宅にも同じ環境を用意して調べるなり遊ぶなりしましょう。
私の個人的な偏見かも知れませんが、「家ではパソコンなんて触らないよ」とかのたまってる人は大抵仕事できません。

上記の回答ではアバウトすぎてという場合、資格取得を目指すのも一つの手だと思います。
やるなら一発で必ず合格するという意気込みで。
自分を追い詰めるためには、周りに言いふらしましょう。

(いろいろ書きましたが、自分に言いたいことでもあるかも知れません)

投稿2016/07/24 12:33

Mr_Roboto

総合スコア2208

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

growthposition

2016/07/25 06:25

ご回答ありがとうございます。 「手を動かせ」読んだだけのことはすぐ忘れます。 「分かるまで繰り返せ」 一度やっただけのことはすぐ忘れます。 「四六時中考えよ」能力の多少はあれど、どんなことでも取り組んだ時間に応じて身につきます。 上記基礎的な反復を地道に繰り返してまいります。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問