SCW 아이콘
영웅 배경, 구분선 없음
블로그

So verhindern Sie häufige Java-Fehler

Wandern Sie Neto
게시됨 Feb 02, 2022
마지막 업데이트: 2026년 3월 9일

Seien Sie ein produktiverer Java-Entwickler

Mit 9 Millionen Entwicklern weltweit* gehört Java (Oracle Corporation) zu den beliebtesten Programmiersprachen der Welt. Viele Anwendungsframeworks wurden auf Java aufgebaut, da es sich um eine sehr vielseitige Sprache handelt, mit der Programme auf vielen verschiedenen Geräten ausgeführt werden können, die Java Runtime Environment (JRE) unterstützen — eine Umgebung, in der alle Java-Programme ausgeführt werden. Die von Entwicklern geleiteten Communitys sind sehr aktiv und die umfassende Unterstützung, die neuen Programmierern zur Verfügung steht, trägt zu ihrer stetig wachsenden Beliebtheit bei.

Da es Java schon lange gibt, haben die Communities Jahre damit verbracht, Standards, Tools und Codierungsmuster zu entwickeln und häufige Fehler zu beheben, mit denen Entwickler immer wieder konfrontiert sind. Alle diese von der Community geleiteten Initiativen haben ein gemeinsames Ziel: Entwickler dabei zu unterstützen, bei der Entwicklung von Anwendungen mit Java so produktiv wie möglich zu sein. Wenn es jedoch darum geht, die besten Praktiken oder Muster im Anwendungscode anzuwenden, liegt die Verantwortung beim Entwickler. Die Durchsetzung guter Praktiken ist sehr unterschiedlich und macht es daher schwierig, einen Standardansatz für eine Programmierpraxis zu verfolgen, wenn die Meinungen innerhalb der Gemeinschaften sehr unterschiedlich sind. Die Entwickler greifen auf Hilfe in Online-Communities zurück, die Ihnen manchmal versehentlich unsichere Lösungen für Ihre Codierungsprobleme bieten können.

Um Entwicklern bei der Implementierung sicherer Lösungen für häufig auftretende Java-Codierungsprobleme zu helfen, haben wir Sensei entwickelt — ein IntelliJ-Plugin zur Korrektur fehlerhafter Codierungsmuster gemäß den von Ihnen oder Ihrer Organisation definierten Rezepten (oder Regeln) in einer professionellen Umgebung. Sensei ermöglicht es Entwicklern, häufige Java-Fehler (Fallstricke) mit einem einzigen Klick zu identifizieren und zu korrigieren.

Lesen Sie weiter, um zu erfahren, wie Sensei die Produktivität von Entwicklern steigert, indem er einige häufig auftretende Java-Codierungsfehler behebt.

Ein wiederkehrender Fehler, der Entwickler frustriert

Ein Beispiel für diese häufigen Fehler ist die falsche Gleichheitsprüfung von Wrapper-Werten. Werte von Grundkörpern in Boxen sollten mit der Equals-Methode verglichen werden, statt mit dem Referenzvergleichsoperator (= =), um unerwartete Ergebnisse zu vermeiden.

Beispielsweise verhält sich die Verwendung des Referenzvergleichsoperators für Integer-Werte im Bereich von -128 bis 127 (normalerweise) genauso wie die Methode equals. Wenn wir jedoch denselben Vergleich mit Werten außerhalb dieses Bereichs durchführen, unterscheiden sich die Ergebnisse. Dies liegt daran, dass Java einen konstanten Pool für den genannten Bereich von Integer-Werten beibehält. Die Verwendung der Equals-Methode führt immer zu den erwarteten Ergebnissen und ist daher die richtige Methode zum Vergleichen.

In diesem Beispiel verwenden wir fälschlicherweise den Operator (==), um die Gleichheit zu überprüfen.

Was zu der folgenden Ausgabe führt:

wahr

falsch

falsch

wahr

Der richtige Weg zum Vergleichen ist die Equals-Methode.

Und dann wäre die Ausgabe:

wahr

falsch

wahr

falsch

Diese bekannte bewährte Methode gibt es schon seit geraumer Zeit und dennoch wird sie oft falsch in Legacy-Code implementiert, der darauf wartet, zum ungünstigsten Zeitpunkt seinen hässlichen Kopf zu erheben. Deshalb haben wir Rezepte (oder Regeln) erstellt, die helfen, solche unerwünschten Codierungsmuster lokal zu identifizieren und mithilfe von Sensei mit einem einzigen Klick eine Korrektur vorzunehmen.

Sensei ist ein hochgradig anpassbares IDE-Plugin zum Scannen und Korrigieren von unerwünschtem Code während der Eingabe — mit Hunderten von herunterladbaren Code-Transformationen und Migrationsrezepten (Regeln) sowie einer eingebauten Fähigkeit, eigenen Code zu erstellen. Mit Sensei können Entwickler fehlerhafte Codemuster während der Eingabe korrigieren, sodass sie Qualitätscode schneller bereitstellen und ihn letztendlich auf konsistente und standardisierte Weise für alle Teams und Projekte schreiben können.

Wie Sensei solche häufigen Java-Probleme behebt

Da Sensei es dir ermöglicht, deine eigenen Rezepte zu kreieren, haben wir ein Rezept erstellt, um den oben genannten Fehler zu korrigieren.

In diesem Beispiel wollen wir herausfinden, wo wir den Vergleichsoperator (==) im primitiven Box-Typ verwenden.

Ein Sensei-Rezept sieht so aus (in YAML):

Das oben Genannte kann während der Eingabe nach dem wiederkehrenden fehlerhaften Muster oder der gesamten Datei, dem konfigurierten Bereich und sogar der gesamten Codebasis suchen. Sobald das Muster gefunden wurde, besteht der nächste natürliche Schritt darin, es sofort korrigieren zu können, ohne online suchen zu müssen. Mit Sensei können Sie Korrekturen erstellen, mit denen Sie Code wie angegeben hinzufügen/bearbeiten/löschen können. Sie können sogar mehrere Fixes bereitstellen, wenn Sie dies für richtig halten, sodass Entwickler den für sie am besten geeigneten Fix auswählen können.

In unserem Beispiel wollen wir den Vergleich mit der Methode equals anstelle des Operators (==) neu schreiben.

Ein verfügbarer Fix wird wie folgt beschrieben:

So funktioniert's:

Einfache Implementierung von Standard-Codierungsrichtlinien

Das Java Gotchas Cookbook enthält 22 Rezepte, mit denen Sie häufige Fehler vermeiden und Ihren Code sauber und sicher halten können. Es erkennt die falsche oder unsichere Verwendung verschiedener Funktionen und APIs der Java-Sprache, z. B. Objektgleichheit, Ausnahmebehandlung, reguläre Ausdrücke und Sammlungen. Wenn Sie Sensei und dieses Kochbuch verwenden, können Sie von Anfang an besseren Code schreiben und sogar Ihre eigenen Rezepte erstellen, die zu Ihrem einzigartigen Team, Projekt oder Ihrer Organisation passen.

Dies ist nur ein Beispiel für die vielen Möglichkeiten, wie Sensei zur Standardisierung Ihrer Projekte eingesetzt werden kann. Du kannst immer nach Anti-Patterns oder bestimmten manuellen Codetransformationen Ausschau halten, auf die du häufig in Pull-Requests stößt oder wenn du selbst codest. Wenn du eine Reihe von Codierungsrichtlinien hast, die von Entwicklern oft übersehen werden, könntest du die Richtlinien in Rezepte umwandeln, sodass Entwickler genehmigte Codetransformationen mit Zuversicht anwenden können.

Installieren Sie Sensei jetzt und aktivieren Sie Java Gotchas Cookbook für ein produktives Entwicklungserlebnis. https://sensei.securecodewarrior.com/cookbooks/scw:java

*2021, Bundesstaat der Entwicklernation, https://www.developernation.net/developer-reports/de20

리소스 보기
리소스 보기

더 알고 싶으신가요?

더 알아보세요

Secure Code Warrior 소프트웨어 개발 주기 전반에 걸쳐 코드를 보호하고 사이버 보안을 최우선으로 하는 문화를 조성하도록 귀사를 Secure Code Warrior . 앱 보안 관리자, 개발자, 최고정보보안책임자(CISO) 또는 보안 관련 업무를 담당하는 분이라면 누구든, 저희는 귀사가 안전하지 않은 코드로 인한 위험을 줄일 수 있도록 돕습니다.

데모 예약하기
공유하기:
링크드인 브랜드사회적x 로고
저자
Wandern Sie Neto
게시일: Feb 02, 2022

공유하기:
링크드인 브랜드사회적x 로고

Seien Sie ein produktiverer Java-Entwickler

Mit 9 Millionen Entwicklern weltweit* gehört Java (Oracle Corporation) zu den beliebtesten Programmiersprachen der Welt. Viele Anwendungsframeworks wurden auf Java aufgebaut, da es sich um eine sehr vielseitige Sprache handelt, mit der Programme auf vielen verschiedenen Geräten ausgeführt werden können, die Java Runtime Environment (JRE) unterstützen — eine Umgebung, in der alle Java-Programme ausgeführt werden. Die von Entwicklern geleiteten Communitys sind sehr aktiv und die umfassende Unterstützung, die neuen Programmierern zur Verfügung steht, trägt zu ihrer stetig wachsenden Beliebtheit bei.

Da es Java schon lange gibt, haben die Communities Jahre damit verbracht, Standards, Tools und Codierungsmuster zu entwickeln und häufige Fehler zu beheben, mit denen Entwickler immer wieder konfrontiert sind. Alle diese von der Community geleiteten Initiativen haben ein gemeinsames Ziel: Entwickler dabei zu unterstützen, bei der Entwicklung von Anwendungen mit Java so produktiv wie möglich zu sein. Wenn es jedoch darum geht, die besten Praktiken oder Muster im Anwendungscode anzuwenden, liegt die Verantwortung beim Entwickler. Die Durchsetzung guter Praktiken ist sehr unterschiedlich und macht es daher schwierig, einen Standardansatz für eine Programmierpraxis zu verfolgen, wenn die Meinungen innerhalb der Gemeinschaften sehr unterschiedlich sind. Die Entwickler greifen auf Hilfe in Online-Communities zurück, die Ihnen manchmal versehentlich unsichere Lösungen für Ihre Codierungsprobleme bieten können.

Um Entwicklern bei der Implementierung sicherer Lösungen für häufig auftretende Java-Codierungsprobleme zu helfen, haben wir Sensei entwickelt — ein IntelliJ-Plugin zur Korrektur fehlerhafter Codierungsmuster gemäß den von Ihnen oder Ihrer Organisation definierten Rezepten (oder Regeln) in einer professionellen Umgebung. Sensei ermöglicht es Entwicklern, häufige Java-Fehler (Fallstricke) mit einem einzigen Klick zu identifizieren und zu korrigieren.

Lesen Sie weiter, um zu erfahren, wie Sensei die Produktivität von Entwicklern steigert, indem er einige häufig auftretende Java-Codierungsfehler behebt.

Ein wiederkehrender Fehler, der Entwickler frustriert

Ein Beispiel für diese häufigen Fehler ist die falsche Gleichheitsprüfung von Wrapper-Werten. Werte von Grundkörpern in Boxen sollten mit der Equals-Methode verglichen werden, statt mit dem Referenzvergleichsoperator (= =), um unerwartete Ergebnisse zu vermeiden.

Beispielsweise verhält sich die Verwendung des Referenzvergleichsoperators für Integer-Werte im Bereich von -128 bis 127 (normalerweise) genauso wie die Methode equals. Wenn wir jedoch denselben Vergleich mit Werten außerhalb dieses Bereichs durchführen, unterscheiden sich die Ergebnisse. Dies liegt daran, dass Java einen konstanten Pool für den genannten Bereich von Integer-Werten beibehält. Die Verwendung der Equals-Methode führt immer zu den erwarteten Ergebnissen und ist daher die richtige Methode zum Vergleichen.

In diesem Beispiel verwenden wir fälschlicherweise den Operator (==), um die Gleichheit zu überprüfen.

Was zu der folgenden Ausgabe führt:

wahr

falsch

falsch

wahr

Der richtige Weg zum Vergleichen ist die Equals-Methode.

Und dann wäre die Ausgabe:

wahr

falsch

wahr

falsch

Diese bekannte bewährte Methode gibt es schon seit geraumer Zeit und dennoch wird sie oft falsch in Legacy-Code implementiert, der darauf wartet, zum ungünstigsten Zeitpunkt seinen hässlichen Kopf zu erheben. Deshalb haben wir Rezepte (oder Regeln) erstellt, die helfen, solche unerwünschten Codierungsmuster lokal zu identifizieren und mithilfe von Sensei mit einem einzigen Klick eine Korrektur vorzunehmen.

Sensei ist ein hochgradig anpassbares IDE-Plugin zum Scannen und Korrigieren von unerwünschtem Code während der Eingabe — mit Hunderten von herunterladbaren Code-Transformationen und Migrationsrezepten (Regeln) sowie einer eingebauten Fähigkeit, eigenen Code zu erstellen. Mit Sensei können Entwickler fehlerhafte Codemuster während der Eingabe korrigieren, sodass sie Qualitätscode schneller bereitstellen und ihn letztendlich auf konsistente und standardisierte Weise für alle Teams und Projekte schreiben können.

Wie Sensei solche häufigen Java-Probleme behebt

Da Sensei es dir ermöglicht, deine eigenen Rezepte zu kreieren, haben wir ein Rezept erstellt, um den oben genannten Fehler zu korrigieren.

In diesem Beispiel wollen wir herausfinden, wo wir den Vergleichsoperator (==) im primitiven Box-Typ verwenden.

Ein Sensei-Rezept sieht so aus (in YAML):

Das oben Genannte kann während der Eingabe nach dem wiederkehrenden fehlerhaften Muster oder der gesamten Datei, dem konfigurierten Bereich und sogar der gesamten Codebasis suchen. Sobald das Muster gefunden wurde, besteht der nächste natürliche Schritt darin, es sofort korrigieren zu können, ohne online suchen zu müssen. Mit Sensei können Sie Korrekturen erstellen, mit denen Sie Code wie angegeben hinzufügen/bearbeiten/löschen können. Sie können sogar mehrere Fixes bereitstellen, wenn Sie dies für richtig halten, sodass Entwickler den für sie am besten geeigneten Fix auswählen können.

In unserem Beispiel wollen wir den Vergleich mit der Methode equals anstelle des Operators (==) neu schreiben.

Ein verfügbarer Fix wird wie folgt beschrieben:

So funktioniert's:

Einfache Implementierung von Standard-Codierungsrichtlinien

Das Java Gotchas Cookbook enthält 22 Rezepte, mit denen Sie häufige Fehler vermeiden und Ihren Code sauber und sicher halten können. Es erkennt die falsche oder unsichere Verwendung verschiedener Funktionen und APIs der Java-Sprache, z. B. Objektgleichheit, Ausnahmebehandlung, reguläre Ausdrücke und Sammlungen. Wenn Sie Sensei und dieses Kochbuch verwenden, können Sie von Anfang an besseren Code schreiben und sogar Ihre eigenen Rezepte erstellen, die zu Ihrem einzigartigen Team, Projekt oder Ihrer Organisation passen.

Dies ist nur ein Beispiel für die vielen Möglichkeiten, wie Sensei zur Standardisierung Ihrer Projekte eingesetzt werden kann. Du kannst immer nach Anti-Patterns oder bestimmten manuellen Codetransformationen Ausschau halten, auf die du häufig in Pull-Requests stößt oder wenn du selbst codest. Wenn du eine Reihe von Codierungsrichtlinien hast, die von Entwicklern oft übersehen werden, könntest du die Richtlinien in Rezepte umwandeln, sodass Entwickler genehmigte Codetransformationen mit Zuversicht anwenden können.

Installieren Sie Sensei jetzt und aktivieren Sie Java Gotchas Cookbook für ein produktives Entwicklungserlebnis. https://sensei.securecodewarrior.com/cookbooks/scw:java

*2021, Bundesstaat der Entwicklernation, https://www.developernation.net/developer-reports/de20

리소스 보기
리소스 보기

아래 양식을 작성하여 보고서를 다운로드하십시오.

귀하의 허락을 받아 당사 제품 및 안전한 코딩과 관련된 주제에 대한 정보를 보내드리고자 합니다. 당사는 귀하의 개인정보를 항상 세심하게 처리하며, 마케팅 목적으로 타사에 판매하지 않습니다.

제출
scw 성공 아이콘
scw 오류 아이콘
양식을 제출하려면 '분석' 쿠키를 활성화해 주십시오. 완료 후에는 언제든지 다시 비활성화할 수 있습니다.

Seien Sie ein produktiverer Java-Entwickler

Mit 9 Millionen Entwicklern weltweit* gehört Java (Oracle Corporation) zu den beliebtesten Programmiersprachen der Welt. Viele Anwendungsframeworks wurden auf Java aufgebaut, da es sich um eine sehr vielseitige Sprache handelt, mit der Programme auf vielen verschiedenen Geräten ausgeführt werden können, die Java Runtime Environment (JRE) unterstützen — eine Umgebung, in der alle Java-Programme ausgeführt werden. Die von Entwicklern geleiteten Communitys sind sehr aktiv und die umfassende Unterstützung, die neuen Programmierern zur Verfügung steht, trägt zu ihrer stetig wachsenden Beliebtheit bei.

Da es Java schon lange gibt, haben die Communities Jahre damit verbracht, Standards, Tools und Codierungsmuster zu entwickeln und häufige Fehler zu beheben, mit denen Entwickler immer wieder konfrontiert sind. Alle diese von der Community geleiteten Initiativen haben ein gemeinsames Ziel: Entwickler dabei zu unterstützen, bei der Entwicklung von Anwendungen mit Java so produktiv wie möglich zu sein. Wenn es jedoch darum geht, die besten Praktiken oder Muster im Anwendungscode anzuwenden, liegt die Verantwortung beim Entwickler. Die Durchsetzung guter Praktiken ist sehr unterschiedlich und macht es daher schwierig, einen Standardansatz für eine Programmierpraxis zu verfolgen, wenn die Meinungen innerhalb der Gemeinschaften sehr unterschiedlich sind. Die Entwickler greifen auf Hilfe in Online-Communities zurück, die Ihnen manchmal versehentlich unsichere Lösungen für Ihre Codierungsprobleme bieten können.

Um Entwicklern bei der Implementierung sicherer Lösungen für häufig auftretende Java-Codierungsprobleme zu helfen, haben wir Sensei entwickelt — ein IntelliJ-Plugin zur Korrektur fehlerhafter Codierungsmuster gemäß den von Ihnen oder Ihrer Organisation definierten Rezepten (oder Regeln) in einer professionellen Umgebung. Sensei ermöglicht es Entwicklern, häufige Java-Fehler (Fallstricke) mit einem einzigen Klick zu identifizieren und zu korrigieren.

Lesen Sie weiter, um zu erfahren, wie Sensei die Produktivität von Entwicklern steigert, indem er einige häufig auftretende Java-Codierungsfehler behebt.

Ein wiederkehrender Fehler, der Entwickler frustriert

Ein Beispiel für diese häufigen Fehler ist die falsche Gleichheitsprüfung von Wrapper-Werten. Werte von Grundkörpern in Boxen sollten mit der Equals-Methode verglichen werden, statt mit dem Referenzvergleichsoperator (= =), um unerwartete Ergebnisse zu vermeiden.

Beispielsweise verhält sich die Verwendung des Referenzvergleichsoperators für Integer-Werte im Bereich von -128 bis 127 (normalerweise) genauso wie die Methode equals. Wenn wir jedoch denselben Vergleich mit Werten außerhalb dieses Bereichs durchführen, unterscheiden sich die Ergebnisse. Dies liegt daran, dass Java einen konstanten Pool für den genannten Bereich von Integer-Werten beibehält. Die Verwendung der Equals-Methode führt immer zu den erwarteten Ergebnissen und ist daher die richtige Methode zum Vergleichen.

In diesem Beispiel verwenden wir fälschlicherweise den Operator (==), um die Gleichheit zu überprüfen.

Was zu der folgenden Ausgabe führt:

wahr

falsch

falsch

wahr

Der richtige Weg zum Vergleichen ist die Equals-Methode.

Und dann wäre die Ausgabe:

wahr

falsch

wahr

falsch

Diese bekannte bewährte Methode gibt es schon seit geraumer Zeit und dennoch wird sie oft falsch in Legacy-Code implementiert, der darauf wartet, zum ungünstigsten Zeitpunkt seinen hässlichen Kopf zu erheben. Deshalb haben wir Rezepte (oder Regeln) erstellt, die helfen, solche unerwünschten Codierungsmuster lokal zu identifizieren und mithilfe von Sensei mit einem einzigen Klick eine Korrektur vorzunehmen.

Sensei ist ein hochgradig anpassbares IDE-Plugin zum Scannen und Korrigieren von unerwünschtem Code während der Eingabe — mit Hunderten von herunterladbaren Code-Transformationen und Migrationsrezepten (Regeln) sowie einer eingebauten Fähigkeit, eigenen Code zu erstellen. Mit Sensei können Entwickler fehlerhafte Codemuster während der Eingabe korrigieren, sodass sie Qualitätscode schneller bereitstellen und ihn letztendlich auf konsistente und standardisierte Weise für alle Teams und Projekte schreiben können.

Wie Sensei solche häufigen Java-Probleme behebt

Da Sensei es dir ermöglicht, deine eigenen Rezepte zu kreieren, haben wir ein Rezept erstellt, um den oben genannten Fehler zu korrigieren.

In diesem Beispiel wollen wir herausfinden, wo wir den Vergleichsoperator (==) im primitiven Box-Typ verwenden.

Ein Sensei-Rezept sieht so aus (in YAML):

Das oben Genannte kann während der Eingabe nach dem wiederkehrenden fehlerhaften Muster oder der gesamten Datei, dem konfigurierten Bereich und sogar der gesamten Codebasis suchen. Sobald das Muster gefunden wurde, besteht der nächste natürliche Schritt darin, es sofort korrigieren zu können, ohne online suchen zu müssen. Mit Sensei können Sie Korrekturen erstellen, mit denen Sie Code wie angegeben hinzufügen/bearbeiten/löschen können. Sie können sogar mehrere Fixes bereitstellen, wenn Sie dies für richtig halten, sodass Entwickler den für sie am besten geeigneten Fix auswählen können.

In unserem Beispiel wollen wir den Vergleich mit der Methode equals anstelle des Operators (==) neu schreiben.

Ein verfügbarer Fix wird wie folgt beschrieben:

So funktioniert's:

Einfache Implementierung von Standard-Codierungsrichtlinien

Das Java Gotchas Cookbook enthält 22 Rezepte, mit denen Sie häufige Fehler vermeiden und Ihren Code sauber und sicher halten können. Es erkennt die falsche oder unsichere Verwendung verschiedener Funktionen und APIs der Java-Sprache, z. B. Objektgleichheit, Ausnahmebehandlung, reguläre Ausdrücke und Sammlungen. Wenn Sie Sensei und dieses Kochbuch verwenden, können Sie von Anfang an besseren Code schreiben und sogar Ihre eigenen Rezepte erstellen, die zu Ihrem einzigartigen Team, Projekt oder Ihrer Organisation passen.

Dies ist nur ein Beispiel für die vielen Möglichkeiten, wie Sensei zur Standardisierung Ihrer Projekte eingesetzt werden kann. Du kannst immer nach Anti-Patterns oder bestimmten manuellen Codetransformationen Ausschau halten, auf die du häufig in Pull-Requests stößt oder wenn du selbst codest. Wenn du eine Reihe von Codierungsrichtlinien hast, die von Entwicklern oft übersehen werden, könntest du die Richtlinien in Rezepte umwandeln, sodass Entwickler genehmigte Codetransformationen mit Zuversicht anwenden können.

Installieren Sie Sensei jetzt und aktivieren Sie Java Gotchas Cookbook für ein produktives Entwicklungserlebnis. https://sensei.securecodewarrior.com/cookbooks/scw:java

*2021, Bundesstaat der Entwicklernation, https://www.developernation.net/developer-reports/de20

웨비나 시청하기
시작하세요
더 알아보세요

아래 링크를 클릭하여 이 자료의 PDF를 다운로드하십시오.

Secure Code Warrior 소프트웨어 개발 주기 전반에 걸쳐 코드를 보호하고 사이버 보안을 최우선으로 하는 문화를 조성하도록 귀사를 Secure Code Warrior . 앱 보안 관리자, 개발자, 최고정보보안책임자(CISO) 또는 보안 관련 업무를 담당하는 분이라면 누구든, 저희는 귀사가 안전하지 않은 코드로 인한 위험을 줄일 수 있도록 돕습니다.

보고서 보기데모 예약하기
리소스 보기
공유하기:
링크드인 브랜드사회적x 로고
더 알고 싶으신가요?

공유하기:
링크드인 브랜드사회적x 로고
저자
Wandern Sie Neto
게시일: Feb 02, 2022

공유하기:
링크드인 브랜드사회적x 로고

Seien Sie ein produktiverer Java-Entwickler

Mit 9 Millionen Entwicklern weltweit* gehört Java (Oracle Corporation) zu den beliebtesten Programmiersprachen der Welt. Viele Anwendungsframeworks wurden auf Java aufgebaut, da es sich um eine sehr vielseitige Sprache handelt, mit der Programme auf vielen verschiedenen Geräten ausgeführt werden können, die Java Runtime Environment (JRE) unterstützen — eine Umgebung, in der alle Java-Programme ausgeführt werden. Die von Entwicklern geleiteten Communitys sind sehr aktiv und die umfassende Unterstützung, die neuen Programmierern zur Verfügung steht, trägt zu ihrer stetig wachsenden Beliebtheit bei.

Da es Java schon lange gibt, haben die Communities Jahre damit verbracht, Standards, Tools und Codierungsmuster zu entwickeln und häufige Fehler zu beheben, mit denen Entwickler immer wieder konfrontiert sind. Alle diese von der Community geleiteten Initiativen haben ein gemeinsames Ziel: Entwickler dabei zu unterstützen, bei der Entwicklung von Anwendungen mit Java so produktiv wie möglich zu sein. Wenn es jedoch darum geht, die besten Praktiken oder Muster im Anwendungscode anzuwenden, liegt die Verantwortung beim Entwickler. Die Durchsetzung guter Praktiken ist sehr unterschiedlich und macht es daher schwierig, einen Standardansatz für eine Programmierpraxis zu verfolgen, wenn die Meinungen innerhalb der Gemeinschaften sehr unterschiedlich sind. Die Entwickler greifen auf Hilfe in Online-Communities zurück, die Ihnen manchmal versehentlich unsichere Lösungen für Ihre Codierungsprobleme bieten können.

Um Entwicklern bei der Implementierung sicherer Lösungen für häufig auftretende Java-Codierungsprobleme zu helfen, haben wir Sensei entwickelt — ein IntelliJ-Plugin zur Korrektur fehlerhafter Codierungsmuster gemäß den von Ihnen oder Ihrer Organisation definierten Rezepten (oder Regeln) in einer professionellen Umgebung. Sensei ermöglicht es Entwicklern, häufige Java-Fehler (Fallstricke) mit einem einzigen Klick zu identifizieren und zu korrigieren.

Lesen Sie weiter, um zu erfahren, wie Sensei die Produktivität von Entwicklern steigert, indem er einige häufig auftretende Java-Codierungsfehler behebt.

Ein wiederkehrender Fehler, der Entwickler frustriert

Ein Beispiel für diese häufigen Fehler ist die falsche Gleichheitsprüfung von Wrapper-Werten. Werte von Grundkörpern in Boxen sollten mit der Equals-Methode verglichen werden, statt mit dem Referenzvergleichsoperator (= =), um unerwartete Ergebnisse zu vermeiden.

Beispielsweise verhält sich die Verwendung des Referenzvergleichsoperators für Integer-Werte im Bereich von -128 bis 127 (normalerweise) genauso wie die Methode equals. Wenn wir jedoch denselben Vergleich mit Werten außerhalb dieses Bereichs durchführen, unterscheiden sich die Ergebnisse. Dies liegt daran, dass Java einen konstanten Pool für den genannten Bereich von Integer-Werten beibehält. Die Verwendung der Equals-Methode führt immer zu den erwarteten Ergebnissen und ist daher die richtige Methode zum Vergleichen.

In diesem Beispiel verwenden wir fälschlicherweise den Operator (==), um die Gleichheit zu überprüfen.

Was zu der folgenden Ausgabe führt:

wahr

falsch

falsch

wahr

Der richtige Weg zum Vergleichen ist die Equals-Methode.

Und dann wäre die Ausgabe:

wahr

falsch

wahr

falsch

Diese bekannte bewährte Methode gibt es schon seit geraumer Zeit und dennoch wird sie oft falsch in Legacy-Code implementiert, der darauf wartet, zum ungünstigsten Zeitpunkt seinen hässlichen Kopf zu erheben. Deshalb haben wir Rezepte (oder Regeln) erstellt, die helfen, solche unerwünschten Codierungsmuster lokal zu identifizieren und mithilfe von Sensei mit einem einzigen Klick eine Korrektur vorzunehmen.

Sensei ist ein hochgradig anpassbares IDE-Plugin zum Scannen und Korrigieren von unerwünschtem Code während der Eingabe — mit Hunderten von herunterladbaren Code-Transformationen und Migrationsrezepten (Regeln) sowie einer eingebauten Fähigkeit, eigenen Code zu erstellen. Mit Sensei können Entwickler fehlerhafte Codemuster während der Eingabe korrigieren, sodass sie Qualitätscode schneller bereitstellen und ihn letztendlich auf konsistente und standardisierte Weise für alle Teams und Projekte schreiben können.

Wie Sensei solche häufigen Java-Probleme behebt

Da Sensei es dir ermöglicht, deine eigenen Rezepte zu kreieren, haben wir ein Rezept erstellt, um den oben genannten Fehler zu korrigieren.

In diesem Beispiel wollen wir herausfinden, wo wir den Vergleichsoperator (==) im primitiven Box-Typ verwenden.

Ein Sensei-Rezept sieht so aus (in YAML):

Das oben Genannte kann während der Eingabe nach dem wiederkehrenden fehlerhaften Muster oder der gesamten Datei, dem konfigurierten Bereich und sogar der gesamten Codebasis suchen. Sobald das Muster gefunden wurde, besteht der nächste natürliche Schritt darin, es sofort korrigieren zu können, ohne online suchen zu müssen. Mit Sensei können Sie Korrekturen erstellen, mit denen Sie Code wie angegeben hinzufügen/bearbeiten/löschen können. Sie können sogar mehrere Fixes bereitstellen, wenn Sie dies für richtig halten, sodass Entwickler den für sie am besten geeigneten Fix auswählen können.

In unserem Beispiel wollen wir den Vergleich mit der Methode equals anstelle des Operators (==) neu schreiben.

Ein verfügbarer Fix wird wie folgt beschrieben:

So funktioniert's:

Einfache Implementierung von Standard-Codierungsrichtlinien

Das Java Gotchas Cookbook enthält 22 Rezepte, mit denen Sie häufige Fehler vermeiden und Ihren Code sauber und sicher halten können. Es erkennt die falsche oder unsichere Verwendung verschiedener Funktionen und APIs der Java-Sprache, z. B. Objektgleichheit, Ausnahmebehandlung, reguläre Ausdrücke und Sammlungen. Wenn Sie Sensei und dieses Kochbuch verwenden, können Sie von Anfang an besseren Code schreiben und sogar Ihre eigenen Rezepte erstellen, die zu Ihrem einzigartigen Team, Projekt oder Ihrer Organisation passen.

Dies ist nur ein Beispiel für die vielen Möglichkeiten, wie Sensei zur Standardisierung Ihrer Projekte eingesetzt werden kann. Du kannst immer nach Anti-Patterns oder bestimmten manuellen Codetransformationen Ausschau halten, auf die du häufig in Pull-Requests stößt oder wenn du selbst codest. Wenn du eine Reihe von Codierungsrichtlinien hast, die von Entwicklern oft übersehen werden, könntest du die Richtlinien in Rezepte umwandeln, sodass Entwickler genehmigte Codetransformationen mit Zuversicht anwenden können.

Installieren Sie Sensei jetzt und aktivieren Sie Java Gotchas Cookbook für ein produktives Entwicklungserlebnis. https://sensei.securecodewarrior.com/cookbooks/scw:java

*2021, Bundesstaat der Entwicklernation, https://www.developernation.net/developer-reports/de20

목차

PDF 다운로드
리소스 보기
더 알고 싶으신가요?

더 알아보세요

Secure Code Warrior 소프트웨어 개발 주기 전반에 걸쳐 코드를 보호하고 사이버 보안을 최우선으로 하는 문화를 조성하도록 귀사를 Secure Code Warrior . 앱 보안 관리자, 개발자, 최고정보보안책임자(CISO) 또는 보안 관련 업무를 담당하는 분이라면 누구든, 저희는 귀사가 안전하지 않은 코드로 인한 위험을 줄일 수 있도록 돕습니다.

데모 예약하기다운로드
공유하기:
링크드인 브랜드사회적x 로고
자원 허브

시작을 위한 자료

더 많은 글
자원 허브

시작을 위한 자료

더 많은 글