質問: 質問文に含まれている `WEBの基礎知識` というのは、どの開発言語でも共通なことに対する知識です。 自分を例にして説明すると、現在はWordPressとLaravelのみ経験があり、PHPやSQLはフレームワークで必要な時にググりながら知識を付けています。一度も言語単体で勉強したことはありません。要は経験したフレームワークで何かすることに関しては半年ほどの経験で知識が多少付きました。しかし、PHP単体の知識は乏しいかと思います。 この状態で、急に会社の都合で、PythonのFlaskで開発しなければならないとなった場合、半年前の初心者の頃と同じような状態でスタートすることになるのが、不安です。もちろん、転職という選択肢はありますが、今は考えていません。 そして、その状態はエンジニアとしては良くないだろうとも思っています。 これで伝わるでしょうか...。
回答: > > PHPやSQLはフレームワークで必要な時にググりながら知識を付けています。 > > > そもそもマニュアルを完全に暗記できている人はそうはいないと思います。 「こんなのあったはずだけど、実際どう書くんだっけ?引数とか省略可能だけど色々設定できたような・・・」みたいな感じでPHPマニュアルを確認して適切な使い方をするのが普通です(少なくとも私はそうです) というか「Webの基礎知識」より「プログラミングの基礎知識」が不足しているのではないでしょうか? つまり > > WEBの基礎知識 というのは、どの開発言語でも共通なことに対する知識です。 > > > からも何となく伺えるのが「Webに限ったことではない」ということですね。 フレームワークもなんとなく「結果できればOK」で組んでいませんか? もしかしたらもっと簡潔で良い書き方、表現があるかもしれないとか、「普段から考えて組んでいる」かどうかにかかってきます。 組み方に正解というのはありませんし、お客さんにとっては結果が同じなので中身まで気にされることは殆どありません。(もっと言えば言語もお客さんにとっては関係のないものです) しかし、いざ追加・改修・・・となったときに差が出てきます。 フレームワークも開発を効率的に進めるため(はては後々のメンテナンス性を高めるため)のツール・道具に過ぎないと思っています 今現在、LaravelなりWordpress(こちらはフレームワークではなくCMSですが)なりが持っている機能を最大限に活かせたサイトが出来上がっているでしょうか? というところを突き詰めてみると、「フレームワークばかり活用していると、WEBの基礎知識は付きにくい」という考え方には至らないと思います。 言い方は厳しいかもしれませんが、現時点で最大限使えていないから他の環境に、となったときに不安があるのでしょう。 言語は違ってもロジックは変わりません。お作法さえきちんと抑えればおおよそ同様に組めるようになるものだと私は思っています。 > > PHP単体の知識は乏しい > > > これが自身の不安を物語っていると思います。 乏しい知識の中でフレームワークを使っていたら、それは最大限活用できるはずがないです。他の言語にいっても結果は変わりません。 考え方を前向きにすると、今現在でもPHPですらほぼ初心者のようなものなわけで、じゃあ、Pythonも初心者のような状態で迎えるわけです。覚えること・やることが沢山あって大変かもしれませんが、組みあがって、それが動く喜びを味わえると思いませんか? 会社側も経験半年そこらの開発者に最初からバリバリできるって期待は持っていないと思います。 ある程度の学習期間は設けられるでしょうし、会社がやるとなったからには一応ちゃんとできるPython技術者はいるんでしょう。 開発は1人で回していくものはほとんどないので、これを機会にロジックを考える、プログラミングをするというところからしっかりと身につけていってはどうでしょうか?