当你开始成为一个程序员的时候,在编程的时候很容易陷入下面所述的一些坏习惯。
作为一名程序员,犯错误不可避免,这是你学习编程课程中的一部分。在你的职业生涯中你会犯很多错误 – 有的特别、有的普遍 – 通过这些错误你可以学习如何避免在将来再犯同样的错误。
但是如果你是一个初学者,你犯的错误可能会比其他人更频繁。那么如何才能避免大部分程序员每天都犯的这些普遍的错误呢?
想要避免错误,就要对它有所了解。这也是为什么我要和大家分享一些在我们的程序员生涯中阻碍我们成长的普遍错误。
在开始之前,你可能想知道为什么我知道这些是错误,不是最佳的方法?
有一个简单的回答就是 – 在我的职业生涯中,所有这些情况我都遇到过。有些情况经常遇到,有些只遇到过几次。每次犯错之后,我都后悔莫及。
最坏的情况是我根本你不知道我在做错的东西。一旦我意识到我在做错事,我就开始避免这些失误。至少,我现在写的代码比以前写的要好多了。
现在你们也可以避免这些错误。首先要知道你现在在做的是错误的。我知道大部门程序员都不会做任何错事,因为他们认为那是正确的,所以他们的行为会对程序和程序员的职业成长产生不利影响。
绝大部分的不良编程习惯都源于无知,而没有任何其他原因。
要成为一个好的程序员,我们必须一个一个的去掉这些无知。这也是那些好的编程书籍所尽力展示给我们的。
我们犯这些错误的部分原因在于它们确实完成了工作。并不是我们要做的 – 让我们的程序运行起来,完成我们日常的工作。
但是让什么好用只是你工作的一部分。如果想要让你的应用程序好用,你将不得不定期更新,修复任何新的bug,这些将有可能变得很频繁。这样一来能让你的工作变得比较容易的方法就是遵循好的编程实践。
另外,即使你在小型程序中能够摆脱这些错误,在大型程序中你也可能碰到他们。
如果你仍然犯这些错误,可能你的程序依然正常运行,能够完成需要的任务,但是它会变得易出bug,充满低效率的代码,难于维护。并且,当你很长时间后再来看它的代码的时候,你会发现代码很难理解。
作为程序员,我们的工作不仅仅是让我们的程序工作,而让用户来处理bug。我们的工作是确保用户即使输入错误也不会得到意外的结果。
所以要创建高品质的应用程序,请确保你不会在编程的时候犯下面的这些普遍的错误:
不加理解的拷贝代码
你经常会发现你需要的代码在一些别的程序里面有。整段的拷贝代码并且就这么使用它而不去烦恼于理解每一行代码是很诱人的。
有时候你拷贝的代码可能太大了以至于没有时间去完全理解它。如果你拷贝任何代码都像这样,就会有让你的程序变得脆弱易出bug等风险。
这样可能让工作完成,但是如果这段代码在某种情况下产生了一些意外的行为将会怎么样?如果使你的程序变慢或者有恶意行为将会怎么样?因此需要恰当的理解这些代码,或者需要绝对的确信你拷贝的代码的出处。
如果以后产生了bug,你会发现很难理解这些代码,因为你从来没有写过它。甚至于你会发现很难去找出bug并且修复它,特别是如果拷贝了很多代码在程序的不同地方。
所以当拷贝代码的时候要小心,即使很少的代码。确保你完全理解它了。如果你以前用过一段代码并且可以百分之百的保证它可以工作,那么它是安全可用的。但是如果不是的话,就要当心了。
每次都从头开始
这和我之前说完全相反,但是这确实是初学者容易犯的另外一个错误。
也许你认为每次都从头开始会很好,但是实际上它浪费了太多资源–时间,精力和思维,你可以更好的在其他方面使用它们。
如果你需要的东西已经存在了,那么使用它们。不要反复重复最基础的东西。
你可以使用这些时间让你的应用在其他方面更加优秀。
如果一个API、框架或者游戏引擎让你的任务更加轻松,你没有理由不适用它们。你的目标不是展示你有多么的优秀,也不是证明你可以独立完成任何任务。你的目标是保证你的应用完美工作,并且尽可能少花费一些资源去创造它们。
如果你这样做,你可以用更少的时间去完成同样地工作。时间就是金钱,即使是你为你自己工作,你也应该试着在同样的时间赚更多的钱。
没自己尝试就开始Google
很多次,出于习惯,每次出现新的问题,你都会通过Google来找找解决方案。对于程序来说,这不是个好办法。如果你总是没有自己试一试就通过外部方法来搜索答案,那么你的思维永远都不会受到挑战。
当你的思维停止挑战,你自身的编程技能就会停止增长。把你自己的任何技能都练得很棒,你就可以自己解决问题,这也适用于程序开发。
你是创建一个已经存在的东西,你从来不进行原创。这真是你想要做的吗?
搜寻存在的解决方案看起来很聪明,但是这会蒙蔽你的双眼,你的懒惰会阻止你成为一个好的程序员。如果你真的你想要搜寻一个解决方案,至少,开始的时候你在这个问题上先花一点事件思考一下。
也许你自己不花多少事件就能解决掉它。也许你会有比其他人更好的解决它。也许你的解决方案比其他人的更加精确。
如果你不尝试,你永远都不知道。
忽略警告
这是一个早期我进行程序开发时犯的另一个错误。我不能告诉你当你的程序中出现几百个警号和一次都不出现有什么大的不同-最重要的是忽略掉它就出现新的问题。
警告通常是你做的东西可能不是每次都能正常工作的一个标志。有时,忽略这些警告会造成很大的安全问题。但是真正的问题通常是出现在程序出现几百个警告,或者程序不能正常工作时。
很难确定到底是什么原因造成了那个错误,你必须花更很多的时间来分析每一个警告来找出造成问题发生的根本原因。相反,你可以在警告发生的时候就处理掉它。
通常你仅仅需要使用正确的变量或者正确的函数来处理这些警告。不会花你几小时,只需要几分钟遇到它们就把它们处理掉。
要尽早的处理警告。干净的代码看起来舒服工作起来也会很高。记住- 对待警告和对待错误一样 .
快速修复而不是永久性解决
是的,我对这样做感到愧疚。我不为此而自豪。但通常,我们仅仅是草草的修复一下,很少会去从根本上解决这个问题。
它能正常工作了,问题也处理掉了。但是如果你一不小心,问题又会以不同的方式重新出现。
无论你怎么修复一个问题,都应确保你不会把整个系统破坏掉。修复应该提升整个系统的运行状况,而不是让它更慢或更笨重。
同时,进行一个修复要能永久性的解决这个问题。要长期,不要短期。有时,由于懒惰和无知,我们通常喜欢快速的把问题解决掉,而不想在上面花太多时间。这就是为什么我们的写的代码能正常的工作,但是却不是在所有情况下都能工作。
如果你在工作的时候把它忽略掉,你会在后面花更多的时间。
了解上面这些错误能有助于你避免它们。如果你知道你所做的是错误的,一般来说你就不会去做。
为了把工作干好你应该热爱你所做的。如果因为某些原因你不喜欢编程了那么你几乎不会花额外的功夫来编写好的可维护的程序。
如果你打算写一手好程序那么你就应该 改变你对编程的看法。
你要把编程看成一门艺术而你自己则是一个艺术家。那么你就不会因为懒惰和不小心而犯错。
作家会把一篇未完成的文章发表么?画家会把未完成的画作拿来出售么?歌手会在他的歌中唱没有用的歌词么?
绝不会。
对编程来说也一样。任何情况下,都别编写未经测试的半吊子代码。在你的程序未写完前,不要发布它。别编写不会使用的无用代码。
这都是一些我们犯的一般性错误,因为我们喜欢在工作花更少的时间而去干其他事情。但这是不行的,迟早你都会为确保你的代码不出问题而负责。
越早的练习正确的编程方法,就对你的用户和自己越好。有时成为一个好的程序员意味着你不会犯糟糕程序员同样的错误。
谢谢大家的阅读。如果你知道谁不知道这些编程技巧的,请你把这篇文章发给他们,以便让他们成为好的程序员。

PHPは動的なWebサイトを構築するために使用され、そのコア関数には次のものが含まれます。1。データベースに接続することにより、動的コンテンツを生成し、リアルタイムでWebページを生成します。 2。ユーザーのインタラクションを処理し、提出をフォームし、入力を確認し、操作に応答します。 3.セッションとユーザー認証を管理して、パーソナライズされたエクスペリエンスを提供します。 4.パフォーマンスを最適化し、ベストプラクティスに従って、ウェブサイトの効率とセキュリティを改善します。

PHPはMySQLIおよびPDO拡張機能を使用して、データベース操作とサーバー側のロジック処理で対話し、セッション管理などの関数を介してサーバー側のロジックを処理します。 1)MySQLIまたはPDOを使用してデータベースに接続し、SQLクエリを実行します。 2)セッション管理およびその他の機能を通じて、HTTPリクエストとユーザーステータスを処理します。 3)トランザクションを使用して、データベース操作の原子性を確保します。 4)SQLインジェクションを防ぎ、例外処理とデバッグの閉鎖接続を使用します。 5)インデックスとキャッシュを通じてパフォーマンスを最適化し、読みやすいコードを書き、エラー処理を実行します。

PHPで前処理ステートメントとPDOを使用すると、SQL注入攻撃を効果的に防ぐことができます。 1)PDOを使用してデータベースに接続し、エラーモードを設定します。 2)準備方法を使用して前処理ステートメントを作成し、プレースホルダーを使用してデータを渡し、メソッドを実行します。 3)結果のクエリを処理し、コードのセキュリティとパフォーマンスを確保します。

PHPとPythonには独自の利点と短所があり、選択はプロジェクトのニーズと個人的な好みに依存します。 1.PHPは、大規模なWebアプリケーションの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンスと機械学習の分野を支配しています。

PHPは、電子商取引、コンテンツ管理システム、API開発で広く使用されています。 1)eコマース:ショッピングカート機能と支払い処理に使用。 2)コンテンツ管理システム:動的コンテンツの生成とユーザー管理に使用されます。 3)API開発:RESTFUL API開発とAPIセキュリティに使用されます。パフォーマンスの最適化とベストプラクティスを通じて、PHPアプリケーションの効率と保守性が向上します。

PHPにより、インタラクティブなWebコンテンツを簡単に作成できます。 1)HTMLを埋め込んでコンテンツを動的に生成し、ユーザー入力またはデータベースデータに基づいてリアルタイムで表示します。 2)プロセスフォームの提出と動的出力を生成して、XSSを防ぐためにHTMLSPECIALCHARSを使用していることを確認します。 3)MySQLを使用してユーザー登録システムを作成し、Password_HashおよびPreprocessingステートメントを使用してセキュリティを強化します。これらの手法を習得すると、Web開発の効率が向上します。

PHPとPythonにはそれぞれ独自の利点があり、プロジェクトの要件に従って選択します。 1.PHPは、特にWebサイトの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンス、機械学習、人工知能に適しており、簡潔な構文を備えており、初心者に適しています。

PHPは依然として動的であり、現代のプログラミングの分野で重要な位置を占めています。 1)PHPのシンプルさと強力なコミュニティサポートにより、Web開発で広く使用されています。 2)その柔軟性と安定性により、Webフォーム、データベース操作、ファイル処理の処理において顕著になります。 3)PHPは、初心者や経験豊富な開発者に適した、常に進化し、最適化しています。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

SublimeText3 中国語版
中国語版、とても使いやすい

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

Dreamweaver Mac版
ビジュアル Web 開発ツール

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。
