Hard coding (original) (raw)
Mit dem Begriff hartkodiert (englisch hard coded) bezeichnet man in der Softwareentwicklung Anwendungsdaten, die in den Quelltext einer Software eingebettet sind. Sie sind somit im Code als Konstanten definiert, obwohl sie normalerweise von externen Quellen wie Datenbanken oder dem Benutzer bezogen oder zur Laufzeit generiert werden müssten.
Property | Value |
---|---|
dbo:abstract | Mit dem Begriff hartkodiert (englisch hard coded) bezeichnet man in der Softwareentwicklung Anwendungsdaten, die in den Quelltext einer Software eingebettet sind. Sie sind somit im Code als Konstanten definiert, obwohl sie normalerweise von externen Quellen wie Datenbanken oder dem Benutzer bezogen oder zur Laufzeit generiert werden müssten. (de) Hard coding (also hard-coding or hardcoding) is the software development practice of embedding data directly into the source code of a program or other executable object, as opposed to obtaining the data from external sources or generating it at runtime. Hard-coded data typically can only be modified by editing the source code and recompiling the executable, although it can be changed in memory or on disk using a debugger or hex editor. Data that are hard-coded is best for unchanging pieces of information, such as physical constants, version numbers and static text elements. Softcoded data, on the other hand, encode arbitrary information through user input, text files, INI files, HTTP server responses, configuration files, preprocessor macros, external constants, databases, command-line arguments, and are determined at runtime. (en) Hard-code, término del mundo de la informática que hace referencia a una práctica en el desarrollo de software que consiste en incrustar datos directamente en el código fuente del programa, en lugar de obtener esos datos de una fuente externa como un o parámetros de la línea de comandos, o un archivo de recursos. Esta práctica tiene limitaciones, ya que requiere la modificación del código fuente cada vez que cambian los datos, cuando lo conveniente sería que el usuario final pudiera cambiar estos detalles fuera del código fuente del programa. Por ejemplo, una referencia hard-coded a un fichero tendría escrito el nombre y la ruta al fichero en un lugar específico del disco. Si la localización del fichero cambia, el programador ha de cambiar el código fuente para que apunte a la nueva localización. Una solución a este problema sería tener una variable interna llamada «nombreDeFichero», que podría ser asignada mediante una ventana de diálogo de navegación de ficheros, de esta manera no sería necesario cambiar el programa por un cambio en los datos. Otro ejemplo de las limitaciones del hard-coding puede producirse durante el desarrollo de API's, con la adición o generación de datos de forma dinámica que no se encuentran persistidos en almacén alguno ni especificados en archivos de configuración. Delegar en el código fuente la generación de esta información, en un principio no mutable, consumida muy habitualmente por un cliente del API, provocará problemas de mantenimiento a medio y largo plazo, a pesar de sus aparentes ventajas a corto plazo, además de introducir un diseño blackbox del sistema. El abuso de esta práctica es muy extendida entre programadores noveles, básicamente debido a su poco conocimiento de los estándares de programación, aunque también puede darse en programadores de experiencia contrastada; en este caso algunos autores consideran que se trata de un síntoma de agotamiento que puede llevar al programador a abandonar prácticas correctas en favor de otras más rápidas, aun sabiendo que son incorrectas. Un caso del uso correcto de está práctica es en sistemas embebidos que jamás tendrán interacción con ningún usuario y que tienen que mantener unos parámetros de funcionamiento mínimos a lo largo de toda su vida, de manera que en caso de perder los parámetros configurados siempre pueda seguir funcionando. Esos parámetros mínimos deben ser hard-coded. Otro caso correcto del hard-coding es definir los pines físicos de un microcontrolador a los que tiene conectado los periféricos, por lo general estos valores son propios del sistema y jamás deberían poder ser modificados externamente al desarrollo. * Datos: Q2111125 (es) In informatica, con l'espressione codifica fissa (in inglese hard coding), o valori cablati si intende la prassi di introdurre in un codice sorgente dei valori costanti che non possono essere cambiati senza ricompilazione del codice sorgente e quindi irrigidiscono il programma ottenuto dalla compilazione di quel codice sorgente. Questa prassi è quindi considerata negativa nella programmazione in quanto i valori di variabili costanti vengono inseriti direttamente nella logica di programmazione e duplicati quando necessario. L'alternativa sta nel sostituire i valori costanti con valori letti da file di configurazione, da un database o passati come all'avvio del programma. (it) ハードコーディング(英語: hard coding)とは、本来プログラム中に記述すべきでないリソース(エラーメッセージなど)を、直接ソースコード中に埋め込むことである。これらは本来、外部ソースから取得するか、実行時に生成するべきものであり、これをソフトコーディング(英語: soft coding)という。 ハードコーディングされたデータを変更するには、ソースコードを編集して実行可能ファイルを再コンパイルするか、バイナリエディタを用いてメモリ上またはディスク上のプログラムを書き換える必要がある。 ハードコーディングされたデータは、物理定数、バージョン番号、静的テキスト要素などの不変な情報を表す。一方、ソフトコーディングされたデータは、ユーザ入力、HTTPサーバーからの応答、構成ファイルの内容などの任意の情報であり、実行時に決定される。 (ja) Codificação rígida (do inglês, hard-code, hard-coding ou hardcoding), em computação, é a terminologia que refere-se à prática de desenvolvimento de software de embutir dados diretamente no código fonte de um programa ou outro objeto executável, ao invés de obter os dados de fontes externas ou gerá-los em tempo de execução.. Normalmente, dados codificados rigidamente só podem ser modificados editando-se o código-fonte e recompilando o executável, embora ele possa ser alterado na memória ou no disco usando um depurador ou editor hexadecimal. Os dados que são codificados rigidamente geralmente representam pedaços de informações imutáveis, como constantes físicas, números de versão e elementos de texto estático. Por outro lado, , codificam informações arbitrárias, como entrada do usuário, respostas do servidor HTTP ou arquivos de configuração, e são determinados em tempo de execução. (pt) Hårdkodning är en programmeringsterm som innebär att ett eller flera värden i ett datorprogram inte kan ändras, till skillnad mot värden som kan omdefinieras i konfigurationsfiler eller databaser, i samband med att programmet startas eller som programmet hämtar från operativsystemet eller på annat sätt kan anpassa under körningen. Hårdkodning innebär att man inte använder variabler vilkas värden dynamiskt kan ändras utan istället skriver det önskade värdet som sådant (en så kallad litteral konstant) i programmets källkod. Ifråga om till exempel inbyggda system kan man med hårdkodning mena att någonting är kodat rent fysiskt, såsom genom hur komponenter kopplats. (sv) Жорстки́й код (відомий також як англ. Hard coding, hard-code чи hardcode) — термін належить до розробки програмного забезпечення, коли вхідні дані зашиваються жорстко в програму і не можуть бути змінені без правки коду програми. Є антипатерном в програмуванні, не рекомендований до використання. Більш загально — вкладення припущень про середовище системи у її реалізації. Класичним прикладом є задання абсолютного шляху до файлу в коді програми, замість відносного чи надання можливості вибрати користувачу цей файл. const char *filename="C:\\myfile.txt"; Проблема полягає в тому, що на іншому комп'ютері або в іншій папці програма не буде працювати. (uk) 寫死(英語:Hard Code或Hard Coding)是指在軟體實作上,將輸出或輸入的相關參數(例如:路徑、輸出的形式或格式)直接以常數的方式撰寫在原始碼中,而非在執行期間由外界指定的設定、資源、資料或格式做出適當回應。一般被認定是種反模式或不完美的實作,因為軟體受到輸入資料或輸出格式的改變就必須修改原始碼,對客戶而言,改變原始碼之外的小設定也許還比較容易。白話來說就是指給定一個問題只會給出一種答案,每次給出的答案都是固定的。 但寫死的狀況也並非完全只有缺陷,因某些封裝需要或軟體本身的保護措施,有時是必要的手段。除此之外,有時候因應某些特殊的需求,製作出簡單的應用程式,應用程式可能只會執行一次或者有限的几次,抑或永遠只應付某種单一需求,利用寫死來縮短開發的時間也是一種不錯的決策。 (zh) |
dbo:wikiPageID | 1257114 (xsd:integer) |
dbo:wikiPageLength | 10234 (xsd:nonNegativeInteger) |
dbo:wikiPageRevisionID | 1056298554 (xsd:integer) |
dbo:wikiPageWikiLink | dbr:Public_key dbr:MUD dbr:Volatile_memory dbr:Binary_code dbr:Debugger dbr:Decompiler dbr:Algorithm dbr:Anti-pattern dbr:International_Olympiad_in_Informatics dbr:Internationalization_and_localization dbr:Compiling dbr:Copy_protection dbr:Run_time_(program_lifecycle_phase) dbr:End-user_license_agreement dbr:Configuration_file dbr:Computer_program dbr:Closed-source_software dbr:Address_space dbr:Windows_2000 dbr:Drive_letter_assignment dbr:Database dbr:FLOSS dbr:Digital_rights_management dbr:Physical_constant dbr:Source_code dbr:Reset_(computing) dbr:HTTP dbr:Backdoor_(computing) dbc:Anti-patterns dbr:Sysadmin dbr:Collaborative_development_environment dbr:Hex_editor dbr:User_input dbr:Softcoding dbr:Software_cracking dbr:Constant_(programming) dbr:INI_file dbr:Microprocessor dbr:Microsoft_Windows dbr:Self-modifying_code dbr:Macro_(computer_science) dbr:Magic_number_(programming) dbr:Serial_number dbr:Scripting_language dbr:Server_(computing) dbr:Software dbr:Execution_(computing) dbr:Firmware dbr:Hard_disk dbr:Text_files dbr:Reverse-engineering dbr:Version_number dbr:Command-line dbr:Anti-cheat dbr:Special_Folders |
dbp:wikiPageUsesTemplate | dbt:More_citations_needed dbt:Redirect dbt:Reflist |
dcterms:subject | dbc:Anti-patterns |
rdfs:comment | Mit dem Begriff hartkodiert (englisch hard coded) bezeichnet man in der Softwareentwicklung Anwendungsdaten, die in den Quelltext einer Software eingebettet sind. Sie sind somit im Code als Konstanten definiert, obwohl sie normalerweise von externen Quellen wie Datenbanken oder dem Benutzer bezogen oder zur Laufzeit generiert werden müssten. (de) ハードコーディング(英語: hard coding)とは、本来プログラム中に記述すべきでないリソース(エラーメッセージなど)を、直接ソースコード中に埋め込むことである。これらは本来、外部ソースから取得するか、実行時に生成するべきものであり、これをソフトコーディング(英語: soft coding)という。 ハードコーディングされたデータを変更するには、ソースコードを編集して実行可能ファイルを再コンパイルするか、バイナリエディタを用いてメモリ上またはディスク上のプログラムを書き換える必要がある。 ハードコーディングされたデータは、物理定数、バージョン番号、静的テキスト要素などの不変な情報を表す。一方、ソフトコーディングされたデータは、ユーザ入力、HTTPサーバーからの応答、構成ファイルの内容などの任意の情報であり、実行時に決定される。 (ja) 寫死(英語:Hard Code或Hard Coding)是指在軟體實作上,將輸出或輸入的相關參數(例如:路徑、輸出的形式或格式)直接以常數的方式撰寫在原始碼中,而非在執行期間由外界指定的設定、資源、資料或格式做出適當回應。一般被認定是種反模式或不完美的實作,因為軟體受到輸入資料或輸出格式的改變就必須修改原始碼,對客戶而言,改變原始碼之外的小設定也許還比較容易。白話來說就是指給定一個問題只會給出一種答案,每次給出的答案都是固定的。 但寫死的狀況也並非完全只有缺陷,因某些封裝需要或軟體本身的保護措施,有時是必要的手段。除此之外,有時候因應某些特殊的需求,製作出簡單的應用程式,應用程式可能只會執行一次或者有限的几次,抑或永遠只應付某種单一需求,利用寫死來縮短開發的時間也是一種不錯的決策。 (zh) Hard coding (also hard-coding or hardcoding) is the software development practice of embedding data directly into the source code of a program or other executable object, as opposed to obtaining the data from external sources or generating it at runtime. Hard-coded data typically can only be modified by editing the source code and recompiling the executable, although it can be changed in memory or on disk using a debugger or hex editor. Data that are hard-coded is best for unchanging pieces of information, such as physical constants, version numbers and static text elements. Softcoded data, on the other hand, encode arbitrary information through user input, text files, INI files, HTTP server responses, configuration files, preprocessor macros, external constants, databases, command-line ar (en) Hard-code, término del mundo de la informática que hace referencia a una práctica en el desarrollo de software que consiste en incrustar datos directamente en el código fuente del programa, en lugar de obtener esos datos de una fuente externa como un o parámetros de la línea de comandos, o un archivo de recursos. Esta práctica tiene limitaciones, ya que requiere la modificación del código fuente cada vez que cambian los datos, cuando lo conveniente sería que el usuario final pudiera cambiar estos detalles fuera del código fuente del programa. * Datos: Q2111125 (es) In informatica, con l'espressione codifica fissa (in inglese hard coding), o valori cablati si intende la prassi di introdurre in un codice sorgente dei valori costanti che non possono essere cambiati senza ricompilazione del codice sorgente e quindi irrigidiscono il programma ottenuto dalla compilazione di quel codice sorgente. Questa prassi è quindi considerata negativa nella programmazione in quanto i valori di variabili costanti vengono inseriti direttamente nella logica di programmazione e duplicati quando necessario. (it) Codificação rígida (do inglês, hard-code, hard-coding ou hardcoding), em computação, é a terminologia que refere-se à prática de desenvolvimento de software de embutir dados diretamente no código fonte de um programa ou outro objeto executável, ao invés de obter os dados de fontes externas ou gerá-los em tempo de execução.. Normalmente, dados codificados rigidamente só podem ser modificados editando-se o código-fonte e recompilando o executável, embora ele possa ser alterado na memória ou no disco usando um depurador ou editor hexadecimal. Os dados que são codificados rigidamente geralmente representam pedaços de informações imutáveis, como constantes físicas, números de versão e elementos de texto estático. Por outro lado, , codificam informações arbitrárias, como entrada do usuário, resp (pt) Hårdkodning är en programmeringsterm som innebär att ett eller flera värden i ett datorprogram inte kan ändras, till skillnad mot värden som kan omdefinieras i konfigurationsfiler eller databaser, i samband med att programmet startas eller som programmet hämtar från operativsystemet eller på annat sätt kan anpassa under körningen. Hårdkodning innebär att man inte använder variabler vilkas värden dynamiskt kan ändras utan istället skriver det önskade värdet som sådant (en så kallad litteral konstant) i programmets källkod. (sv) Жорстки́й код (відомий також як англ. Hard coding, hard-code чи hardcode) — термін належить до розробки програмного забезпечення, коли вхідні дані зашиваються жорстко в програму і не можуть бути змінені без правки коду програми. Є антипатерном в програмуванні, не рекомендований до використання. Більш загально — вкладення припущень про середовище системи у її реалізації. Класичним прикладом є задання абсолютного шляху до файлу в коді програми, замість відносного чи надання можливості вибрати користувачу цей файл. const char *filename="C:\\myfile.txt"; (uk) |
rdfs:label | Hartkodiert (de) Hard code (es) Hard coding (en) Codifica fissa (it) ハードコーディング (ja) Codificação rígida (pt) Hårdkodning (sv) Жорстке кодування (uk) 寫死 (zh) |
owl:sameAs | freebase:Hard coding wikidata:Hard coding dbpedia-de:Hard coding dbpedia-es:Hard coding dbpedia-fa:Hard coding dbpedia-he:Hard coding dbpedia-hu:Hard coding dbpedia-it:Hard coding dbpedia-ja:Hard coding dbpedia-pt:Hard coding dbpedia-sv:Hard coding dbpedia-tr:Hard coding dbpedia-uk:Hard coding dbpedia-zh:Hard coding https://global.dbpedia.org/id/zu9s |
prov:wasDerivedFrom | wikipedia-en:Hard_coding?oldid=1056298554&ns=0 |
foaf:isPrimaryTopicOf | wikipedia-en:Hard_coding |
is dbo:wikiPageRedirects of | dbr:Hard-coded dbr:Hard-coding dbr:Hard_coded dbr:Hardcoded dbr:Hard-coded_value dbr:Hard-coded_values dbr:Hard_code dbr:Hard_coded_value dbr:Hard_coded_values dbr:Hardcode dbr:Hardcoded_value dbr:Hardcoded_values dbr:Hardcoding |
is dbo:wikiPageWikiLink of | dbr:Hard-coded dbr:Hard-coding dbr:Monroe_Epic dbr:Bitcoin_Unlimited dbr:Development_of_The_Last_of_Us dbr:History_of_Wikipedia dbr:Level_of_detail_(computer_graphics) dbr:Commodore_D9060 dbr:Comparison_of_BitTorrent_clients dbr:The_Secret_of_Monkey_Island dbr:LuaTeX dbr:Microsoft_App-V dbr:C_preprocessor dbr:WannaCry_ransomware_attack dbr:Windows_3.1x dbr:Line_wrap_and_word_wrap dbr:Robocall dbr:Alureon dbr:File_format dbr:FlightGear dbr:Gopher_(protocol) dbr:Lempel–Ziv–Welch dbr:Hardwire dbr:Tabula_rasa dbr:Hard_coded dbr:Hardcoded dbr:Texas_Instruments_Graphics_Architecture dbr:Software_testing_tactics dbr:Scheidt_&_Bachmann_Ticket_XPress dbr:Model-driven_application dbr:CLiX_(markup) dbr:Software_testing dbr:Seed7 dbr:Serious_Sam_Double_D dbr:Shadow_of_the_Colossus dbr:Magic_number_(programming) dbr:LiteStep dbr:The_Hacker_Files dbr:Transclusion dbr:Spaced_seed dbr:Hard-coded_value dbr:Hard-coded_values dbr:Hard_code dbr:Hard_coded_value dbr:Hard_coded_values dbr:Hardcode dbr:Hardcoded_value dbr:Hardcoded_values dbr:Hardcoding |
is foaf:primaryTopic of | wikipedia-en:Hard_coding |