適切にプログラムする方法を学ぶために2回目の試みのみを決定した人にPHPを検討する価値はありますか?

こんにちは友人。 非常に慎重にこのようなホリバーのトピックに触れますが、なぜ私が学生であったかとは程遠いときに、プログラミングを勉強することを決めた理由と、私の実装するために何を使用するのか(私の神) PHPの意図。 IT業界の同僚から貴重なアドバイスやガイダンスを受け取ることができてうれしいです。



今後、トピックへのコメント(言語に関するホリバーを除く)で、多くの有用なことが述べられていると言います。 ハブロフスクの住民に感謝します。



個人的な経験


私のキャリアは最も典型的な方法で発展していませんでした。私はいくつかの組織で常に一度に働き、ほとんど常に無料のスケジュールで働いていました。 なぜ彼らはどこでも私を我慢しているのですか? 汎用性のために、彼は自分の手でネットワークを構築し、Debianにオフィスサーバーをセットアップし、CorelDrawできちんとしたリーフレットを描き、色分解で印刷する準備をし、年配の従業員に「オンラインにする」ことを教え、 CMSと単独で、数週間で会社に小さなWebサイトを展開し、膝の上に書かれたプログラムを使用してローカルで何かを自動化することができました。いくつかの日常的な操作により、部門またはオフィス全体のワークフロー全体が遅くなることが明らかになりました。 これがすべてできました。



あなたが理解しているように、私が誇りに思うことは特別なことではありません、私は影響を受けたセクターのいずれかで高度に専門化された専門家になりませんでしたが、小さなチームのどこにいても最大の利益をもたらす中年男性のような普遍的なITオールラウンドアスリートになりました一度に多くの問題を解決します。 しかし、私は人生についてまったく文句を言いません。なぜなら、少し前に、私は自分の小さいながらも開​​発中の地域のウェブスタジオを立ち上げることができたからです。 そして、私は自分のプロジェクトマネージャーです。 私たちは主にCMS Drupalで開発し、ごくごくご存知のようにPHPで書かれたYiiフレームワークで開発しています。



率直に言って、JSとPHPのコードが20%しかわからない優秀なプログラマーを管理するのは少し厄介です。



大学と多くの職場で、C ++、Java、PHPの3つの言語の基礎を学びました。 教えたように、私は基本的なアルゴリズム構造に精通しているだけでなく、数十の方法で配列を並べ替えることができます(このトピックで書かれたコース学生のため)。スタックとキューの配置方法を理解し、コンセプトとトレーニングタスクのレベルでOOPに精通しています。 一般的に、私はプログラミングを普通の、しかし平凡な技術大学の勤勉な学生として知っています。 しかし、実際には、何らかの理由で、PHPが常に助けてくれました。また、暗闇の中で最も焼いたCookieを誘ってくれました。



PHPExcelで長い表形式のレポートを修正するシェルスクリプトを作成し、APIのないパーセルサイトを最初に正規で使用し、次にphpQueryを使用して、インターネット上のローカルMSSQLデータベースからの実際の価格を表示するクイックコード(ロジックで組版を妨げる)Webページを使用しました倉庫システムの場合、「ここで間違ったファイルをアップロードし、このリンクを使用して正しいファイルをダウンロードすれば、量はすでにそこにあります」というカテゴリからあらゆる種類のコンバーターを作成しました。 一般に、実際の問題を解決するときに適切な言語と適切なアプローチを使用するようにいくら努力しても、ソリューションは、アーキテクチャレベルで(OOPとMVCなしで)迅速かつquicklyいソリューションがPHPで作成されたという事実に常に落ち着きました。 同時に、ソリューションは外部から実行可能であるように見えましたが、悲しいかな、同様に動作しました。 美学を観察しないことを反省し、自分自身を呪う時間がないので、それは誰にでも、私にも合いました。



しかし、今は落ち着く時だと決めました。 私はもはやプロのプログラマーではありませんが、正しい考えと手でジュニアレベルに到達したいです。 自己訓練のための時間は少しありますが、最も重要なことは、定期的に何かを強制する方法をすでに知っていることです。 同時に、何度も助けてくれたPHPに感謝しているので、正しい方法で習得したいと思っています。 厳密なタイピングの欠如が2回目の試みを台無しにできるとは思わない。



しかし、 適切なプログラマーとして再び成長するためにどこから始めるべきでしょうか? 知りません PHPでは、本をまったく読みませんでしたが、コメントがネット上に散らばっている記事のコードで勉強しました。 Javaでは、私が気に入った本、その著者Khabibullinを思い出します。 しかし、この本は、言語とプラットフォームに精通していますが、スタイルと正しいアプローチを教えていません。 そして、この本はPHPに関するものではありません。



どうする


あなたの診断は何ですか? あなたの意見では、プログラミングを再学習することはできますか、または日常的なタスクをすばやく解決するために急いで、私は永遠の「陽気なバイコーダー」の役割を取り返しのつかないほどブランド化していますか?



私が今取るべき最初のステップは何ですか?何を読むべきか、どの実用的な課題を解決すべきか、あなた自身に設定すべきタブーは何ですか?



PSそして、二度起きないように、私はおそらくとんでもない質問をします:どのIDEを使うことをお勧めしますか? 私は自分のコードのすべてのメガバイトをPSPadで書き、F5ボタンを使用してブラウザーでテストし、エラーと通知について読み、エディターで再び修正するために戻ったことを認めることを恥ずかしく思います。 そして、正しいプログラマーはどのように、どのようにデバッグしていますか?



PPS既知の症状に従って患者を治療する方が簡単なので、おそらく私の頭の中の混乱を説明するいくつかの例を挙げます。 私は私を悩ませているいくつかの愚かな質問をします:



1. MVCモデルを示す最小限の例を挙げて、そのアプリケーションからの実際的な利益が見えるようにしますか?



2.彼らは言う:安全なコードを書く。 しかし、基本的なルールは何ですか? たとえば、GETやPOSTでチェックや処理を行わずに送信されたものがSQLクエリに送信されると、災害になることを理解しています。 しかし、すぐに恐れて、SQLインジェクションとして許可されない他の典型的なショールは安全にありますか?



3.いくつかの異なるコードフォーマットガイドに出会った。 彼らは時々矛盾す​​ることを仮定します。 「このような問題を解決するので、このように作成する必要がある」という精神で各ポイントについて説明が行われるロシア語のガイドが少なくとも1つありますか。



中間結果


コメントでは、 JurasegはSteve McConnellの「Perfect Code」に助言し、数人の人々は一度に「PHPオブジェクト、パターン、およびプラクティス」に助言しました。 残念ながら、私の英語は弱いので、翻訳を読みます。



Cord 、特定のロシア語の記事へのリンク提供し 、「クラス」の彼自身のプログラムを共有しました。彼によれば、彼は彼自身のチームを準備しています。



多くの人が、 JetBrains PHP StormPHPの最も正しいIDEとして強く推奨し、サポートしています。



また、多くの人は、イデオロギー的に正しいプログラミング知識がなくてもすべてを持っていたので、運命を怒らせることは何もない、私たちがやるべきことを続け、管理スキルを揺さぶるべきだと書いています。



さて、そして多くの人が、PHPで得点し、他の言語の方向、主にPythonの方向を見ることを勧めます。 このトピックでは、PHPを客観的に批判するためにはPHPを完全に知る必要があるというLayneBuchyn哲学的コメントが気に入りました。



All Articles