Programmieren – die neusten Beiträge

Mein Problem als Anwendungsentwickler?

Hallo,

ich bin ausgelernter Fachinformatiker für Anwendungsentwicklung.
Meine Ausbildung habe ich dieses Jahr abgeschlossen und ich hatte vor meiner Ausbildung auch keinerlei Vorerfahrung was Programmierung angeht.

In meiner Ausbildung habe ich mich immer wieder schwer getan die Prinzipien hinter dem Code zu verstehen.
Das heißt ich konnte ihn schon irgendwie anwenden, aber wenn mich jemand gefragt hat "erklär mir mal den Unterscheid von dem und dem" hatte ich darauf meist keine Antwort.

In meiner Ausbildung gab es auch nicht viel mit Grundlagen erlernen, wir wurden quasi schnell bereit gemacht um an der Software der Firma zu arbeiten.

Das Problem was ich heutzutage habe: Ich verstehe oft die Hintergründe von verschiedenen Zeugs in der Programmierung nicht.

Ich kann quasi die Sachen anwenden, aber genau erklären könnte ich es nicht.

Ein Beispiel: Ich bin momentan in einer neuen Firma angestellt, und bin Aufgrund von mangelnder Projekte in ein internes Mobile-App Projekt gesteckt worden.
In dem Projekt bin ich ganz alleine und habe auch schon eine Lauffähige App entwickelt, wo auch bereits ein Prototyp draußen ist.
(Ich hatte vorher noch nie etwas mit Mobile-App-Entwicklung zutun gehabt, das habe ich mir in der Zeit alles selbst erlernt).
Allerdings verstehe ich den Code selber nicht so ganz. Ich könnte jetzt auch keinem anderen erklären, wofür was genau ist.
Es sind quasi Codeschnipsel die ich aus dem Internet genommen habe und dann einfach nur angepasst habe.

Ich habe das Gefühl, dass mich das zu einem schlechten Programmierer macht, und ich wollte gerne wissen, was ich eurer Meinung nach tun muss, um ein richtig guter Programmierer zu werden.

Was kann ich in meinem jetzigen Stand dafür tun?

Software, IT, programmieren, Informatik

javascript api probleme?

Hallo,

guckt euch mal meinen Code an.

JAVASCRIPT:

// INPUT
const login = document.getElementById("loginInput");
const password = document.getElementById("passwordInput");
const button = document.getElementById("sendButton");


// FETCH
const url = "https://crudcrud.com/api/4b3acc467d8c47d8a608bb9820171935/todos"



const dataRender = (array) => {
  if (array === undefined) {
    console.log("Loading results...");
  } else {
    let dataList = array.map((item) => {
      return `
      <div class="users">
        <p>${item.login}</p>
        <button onclick="deleteRequest(${item.id})">Delete</button>
        </div>
        `;
    });
    const getHtml = document.getElementById("userTable");
    getHtml.innerHTML = dataList.join("");
  }
};


const fetchData = async () => {
  try {
    const response = await fetch(url);
    const data = await response.json();
    dataRender(data);
  } catch (error) {
    console.error(error);
  }
};



fetchData();


const postRequest = async () => {
  const data = {
    login: login.value,
    password: password.value,
    isLogin: false,
  };


  try {
    const response = await fetch(url, {
      method: "POST",
      headers: {
        "Content-Type": "application/json",
      },
      body: JSON.stringify(data),
    });


    const results = await response.json();
    console.log(results.message);
  } catch (error) {
    console.error(error);
  }


};


button.addEventListener("click", postRequest);


const deleteRequest = async (id) => {
  try {
    const response = await fetch(`${url}/${id}`, {
      method: "DELETE",
      headers: {
        "Content-Type": "application/json",
      }
    })
    const results = await response.json()
    console.log(results.message);
  }
  catch (error) {
    console.error(error);
  }
}

HTML:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>CRUD</title>
  <script  defer src="./script.js"></script>
</head>
<body>
  <form>
    <input id="loginInput" type="text" placeholder="Login">    
    <input id="passwordInput" type="password" placeholder="Password">    
    <button onclick="" id="sendButton">Send</button>


    <div id="userTable">
      
    </div>
  </form>
</body>
</html>

Mein Ziel:

Wenn ihr auf das button "Send" drückt, dann erscheint ja der value von dem input "login" auf HTML (innerHTML heisst das glaube ich). Und zusammen mit dem value erscheint auch ein anderer Button namens "Delete". Mein Ziel ist es, dass wenn ich auf "Delete" drücke, dann sollte das item aus Backend-Server und aus HTML gelöscht werden. Aber das klappt bei mir die ganze Zeit nicht. Einfacher ist es wenn ihr meinen Code einfügt und selber mal den Code testet, dann werdet ihr verstehen, was ich machen will.

Bitte helft mir! Ich sitze schon wirklich lange dranrum und ohne Erfolg!

Dankeschön im Voraus!

MfG

MrOsmo

Software, App, HTML, IT, Webseite, programmieren, JavaScript, HTML5, Code, Informatik, Programmiersprache, Webentwicklung, Frontend

C++ - "Funktion nimmt keine 0 Argumente." Behebung?

Schönen guten Abend!

Das Problem ist etwas anders als in der Frage, jedoch ist es für mich schwer dies in einem Satz zu erklären. Nun erstmal mein C++ Quellcode zum Verständnis:

#include <iostream>


int numbCount(int count);


int main()
{
	int num1 = numbCount();
	int num2 = numbCount(2);

  ...

}
  
  int numbCount(int count = 1) 
  {
  	int userNumb;
  	std::cout << "Please enter the " << count << ". integer: ";
  	std::cin >> userNumb;
  
  
  	return userNumb;
  }

Also, wie man sehen kann hat meine Funktion numbCount() Parameter. Außerdem bevorzuge ich es die Funktionsdefinition unter der Main() Funktion zu schreiben.

int numbCount(int count);

int main()
{
...
}

int numbCount(int count = 1)
{
...
}

Somit muss ich die Funktionsdeklaration über der Main() Funktion "erwähnen", damit ja der Compiler weiß, dass die Definition noch kommt. Dies scheint in diesem Fall bei einer Funktion mit Standardparameter für VS ein Problem darzustellen - Fehler "numbCount: function does not take 0 arguments".

Wenn ich jedoch die Funktionsdefinition von "numbCount()" über die Main() Funktion packe, funktioniert alles normal.

int numbCount(int count = 1)
{
...
}

int main()
{
...
}

Habe bereits versucht den Parameter in der "erwähnten" Funktionsdeklaration zwischen den runden Klammern ebenfalls einzufügen, also

int numbCount(int count = 1);

jedoch kommt dann der Fehler 'numbCount': redefinition of default argument: parameter 1

FRAGE:
Gibt es eine Möglichkeit in einer Funktion Standardparamter (also wenn kein Wert in Funktionsaufruf zwischen Klammern angegeben -> standardm. Wert 1) zu haben aber trotzdem die Funktionsdefinition unter der Main() Funktion zu belassen?

int numbCount(int count);

int main()
{
    int num1 = numbCount(); // Kein Wert angegeben - Std. Wert 1
    int num2 = numbCount(2);
}

int numbCount(int count = 1)
{
...
}

Vielen Dank und einen schönen Abend! :)

Computer, Software, Programm, programmieren, Anwendung, Funktion, Cplusplus, Anwendungsentwicklung, Argumente, Code, CPP, Fehlerbehebung, fehlercode, Programmiersprache, Softwareentwicklung, Visual Studio, Fehlermeldung, Parameter

Lenovo ThinkPad T410: Gelegentlich lässt es nicht einschalten!? (Hardwareproblem? Vielleicht auch Anmeldeproblem bei Linux Mint 21.2?)?

Hallo,
Wenn ich den Laptop einfach zuklappe, oder auch mich abmelde, passiert es immer häufiger, dass ich ihn nicht mehr anbekomme! Das heisst, er gibt keine Reaktion von sich. Ich stecke dann dis CMOS-Batterie aus und ein und drücke auf den Einschaltknopf und den "ThinkVantage-Button". Immer wieder und halte sie gedrückt. Und ich stecke den Netzstecker aus und ein und schiebe den Akku hinein und ziehe ihn wieder heraus. Dies alles abwechselnd und gleichzeitig und durcheinander und so weiter. Nach 15 - 20 Minunten startet das ThinkPad dann wieder! WIESO???
Heute sogar zu einem Zeitpunkt als die CMOS-Batterie gerade ausgesteckt gewesen ist und es gab nicht einmal eine Fehlermeldung. Selbst die Typische, dass Uhrzeit und Datum einstellt werden müssten, erschien nicht.

Bevor ich zum ersten mal das Netzteil und den Akku gleichzeitig entfernte, leuchtete heute morgen auf der Aussenseite des Computers der Halbmond. Ich glaube in rot. Möglicherweise stand der Laptop auf Stand-by und der Akku ging in der Nacht beinahe leer.

Jedenfalls bin ich mit meinem Latein am Ende.
Würde es etwas ändern können, wenn ich die vermutlich 13 Jahre alte CMOS-Batterie einmal wechsle?

Besten Dank!

PC, Computer, Akku, Software, Betriebssystem, Technik, Notebook, Linux, Hardware, programmieren, Ubuntu, Lenovo, Linux Mint, Mint, Laptop

Wie installiert man in Arch/Manjaro Linux Software?

Wenn man von eigentlich Debian Nutzer ist ist das fremdlich etwas anderes als Apt zu nutzen.
Ich weiss nur das es 3 Möglichkeiten gibt.

  • AUR
  • pacman
  • flatpak
  1. Was ist das Genau ?
  2. Wie kann ich mir das merken / eine Software suchen ?
  3. Was ist am besten ?

Klar ich will das neuste & stabilste ganz bequem haben aber vor allem ist mir viel wichtiger es direkt von der quelle zu kriegen wenn es denn geht.

Ich will hier nicht anfangen irgendwie Github Zeug herunterladen und selber zu kompilieren oder von irgendwelchen privat personen meinen alltags Browser haben wo alle Passwörter sind.

Und die meisten Sachen haben nichts mit Manjaro bzw. Arch auf ihrer Download Seite.

Wenn du glück hast Deb File und sehr sehr selten rpm Pakete für Fedora hab ich das gleiche durchgemacht.

Wie soll ich da das Zeug finden ? Ohne jedes mal googeln how to install chrome manjaro.

Kann mir jemand das wichtigste zusammenfassend beantworten so als guide.
Man muss nicht umbedingt stundenlange videos gucken, ihr habt die Erfahrung schon gemacht wahrscheinlich oder kleines cheat sheet.

Anwendungsbeispiele:

chrome, vs code, discord, steam, firefox developer edition, xampp, node js & npm

Mehr brauch ich überhaupt nicht auf meinem System und ich seh das ohnehin als Test System.

Hauptsächlich werde ich was anderes benutzen, ich kann nicht von heut auf morgen auf Arch Linux umsteigen aber vielleicht wenn ich mehr Ahnung habe.

PC, Server, Computer, Windows, Betriebssystem, Technik, Linux, IT, programmieren, Ubuntu, USB-Stick, Anwendungsentwicklung, booten, Fachinformatiker, fedora, Hacker, Informatik, Informatiker, Linux Mint, Open Source, openSUSE, Programmiersprache, Softwareentwicklung, Treiber, Arch Linux, Debian, Manjaro

Kali Linux als Host System?

Guten Abend liebe GuteFrage Community,

Nun habe ich zur Freude von uns allen einmal eine Kali Frage ^^

Ironie folgt:

Also: Ich habe keine Ahnung von Computern und habe auf TikTok gesehen das da so einer Kali hatte und möchte nun wild auf den Knöpfen drücken ^^

Ironie aus:

Also: Meine Frage beliegt darin, ob es unter bestimmten von eurer Seite als legitim empfunden wird, Kali Linux bzw. ParrotOS als Host System zu benutzen. In meinem Fall geht es um jegliche Einsatzzwecke im Zusammenhang mit Softwareentwicklung, Blue Team Pentesting, Malware Analyse und Ähnliches. Ich möchte es demzufolge nicht installieren, weil es „Kali“ (oder eben „ParrotOS“) heißt, sondern da ich die Tools und die gegebene Umgebung gebrauchen kann. Ich selber habe auch entsprechende Erfahrung im (fortgeschrittenen) Umgang mit Linux Systemen. Ich setze an dieser Stelle übrigens ParrotOS und Kali in die Frage, da ich mich noch nicht entschieden habe, welches ich eventuell nutzen würde.

Es ist nun nicht so, dass ich mir nicht grundsätzlich selbstständig die Pro- und Contra- Argumente auflisten könnte, sondern dass ich schlichtwegergreifend externe Meinungen haben möchte. Die Systeme auf denen ich Kali / ParrotOS installieren wollte, werden beide nur in sehr eingeschränktem Rahmen für andere Zwecke verwendet und sind ansonsten auf IT-Anwendungszwecke limitiert.

Mit freundlichen Grüßen,

eurer Codeline

Test, Technik, Linux, IT, programmieren, Ubuntu, Analyse, booten, Hacking, Malware, Tool, Arch Linux, arch, host, parrot, Virtuelle Maschine, Penetrationstest, Kali Linux

Java Programm Gleichungssytem 3. Grades/Cramersche Regel?

Hallo, ich habe ein Programm erstellt, dass mithilfe der Cramerschen Regel ein Gleichungssytem 3. Grades löst (siehe unten) Nur kommt bei dem Ergebnis immer x1=0.0, x2=0.0 und x3=0.0 raus, egal was man eingibt. Ich finde den Fehler einfach nicht, kann mir da bitte jemand weiterhelfen?

LG

import java.util.*;
public class gs3 {
    public static void main(String[] args) {
        Scanner ein = new Scanner(System.in);
        System.out.println("Geben Sie den Koeffizienten des Gleichungssystems ein:");
        double[][] m = new double[3][4];
        for (int i = 0; i < 3; i++) {
            System.out.println("Gleichung " + (i + 1) + ":");
            for (int j = 0; j < 3; j++) {
                System.out.println("Koeffizient x" + (j + 1) + ":");
                m[i][j] = ein.nextDouble();
            }
            System.out.println("Rechte Seite: ");
            m[i][3] = ein.nextDouble();
        }
        double determinanteA = calculateDeterminant(m);
        if (determinanteA == 0) {
            System.out.println("Gleichungssystem nicht lösbar.");
        } else {
            double[] ergebnis = new double[3];
            for (int i = 0; i < 3; i++) {
                double[][] modifiedM = modifyM(m, i);
                double determinantModified = calculateDeterminant(modifiedM);
                ergebnis[i] = determinantModified / determinanteA;
            }
            System.out.println("Lösung: x1 = " + ergebnis[0] + ", x2 = " + ergebnis[1] + ", x3 = " +
                ergebnis[2]);
        }
        ein.close();
    }
    private static double calculateDeterminant(double[][] m) {
        double determinante = 0.0;
        determinante = m[0][0] * (m[1][1] * m[2][2] - m[1][2] * m[2][1]) -
            m[0][1] * (m[1][0] * m[2][2] - m[1][2] * m[2][0]) +
            m[0][2] * (m[1][0] * m[2][1] - m[1][1] * m[2][0]);
        return determinante;
    }
    private static double[][] modifyM(double[][] m, int column) {
        double[][] modifiedM = new double[3][3];
        for (int i = 0; i < 3; i++) {
            for (int j = 0, k = 0; j < 3; j++) {
                if (j != column) {
                    modifiedM[i][k++] = m[i][j];
                }
            }
        }
        return modifiedM;
    }
}

Computer, Programm, programmieren, Java, Array, codieren, Codierung, Informatik, Programmiersprache

Wie korrigiere ich meinen CountSort-Code, damit er absteigend sortiert?

Hallo!

Meine Aufgabe: Ich soll eine Count Sort implementieren, und zwar so, dass man beim Programm aufrufen im Argument auswählen kann, ob das Array aufsteigend oder absteigend sortiert werden soll.

Mein Problem: Das Aufsteigen sortieren funktioniert, aber das Absteigen sortiert ebenfalls aufsteigend, obwohl es absteigend sortieren soll.

Meine Annahmen: Eigentlich gehe ich davon aus, dass meine Funktion "count_sort_write_output_array", welche das sortierte Array basierend auf der angegebenen Sortierrichtung erstellt, korrekt ist. Schließlich ist es einfach der gleiche Code wie für ASCENDING (aufsteigend), bloß mit geringfügigen Änderungen.

Ich denke eher, dass es daran liegt, dass mein Code erst gar nicht DESCENDING (absteigend) 'auswählt', wenn "desc" als Argument gegeben wird. Ich habe als Standardverhalten ASCENDING gesetzt (also falls kein Argument gegeben wird, oder ein falsches Argument gegeben wird, wird es aufsteigend sortiert), also dachte ich vielleicht, dass entweder

if (strcmp(order, "asc") == 0)

oder

else if (strcmp(order, "desc") == 0)

(in der SortDirection Funktion) irgendwie "falsch" sind, sodass die Sortierfunktion immer das Standardverhalten auswählt. (Also ASCENDING)

Als Debug-Versuch habe ich:

printf("Sortdirection must be defined. Using default: ASCENDING\n");

eingefügt, um zu schauen ob das wirklich der Fall ist. Dennoch wird dieser printf nie gezeigt, selbst wenn ich kein Argument eingebe. Was mich ziemlich verwirrt. Bricht es vorher ab?

Meine 'Frage' an euch: Ich würde es sehr schätzen, wenn jemand einen Blick darauf werfen könnte. Eventuell kann jemand erkennen, woran mein Semantikfehler liegt.

Aber würde ich es auch schätzen, wenn mir jemand andere Debug-Ideen nennen könnte. Ich habe noch nicht viel mit 'Debugging-Methoden' beschäftigt und habe meine Probleme bisher größtenteils mit printfs gelöst. Aber vielleicht gibt es da etwas leichteres!

Vielen Dank!

Bild zum Beitrag
Computer, programmieren, Code, Informatik, Programmiersprache, Visual Studio, Algorithmus, debugging, Sortieralgorithmus

Wie kann ich in Unity 3D die Position speichern und wieder Aufrufen?

Hallo, ich bin 15 benutze die Engine "Unity" seit ungefähr 2einhalb Jahren. Ich habe vor einigen Wochen ein Projekt gestartet, wo es darum geht, durch einen Trigger zu gehen wie ein Portal und dann auf verschiedenen Planeten zu landen und diese zu Erkunden. Kurz gesagt geht es um die Erkundung von Planeten. Jeder Planet hat eine eigene Szene und ich benutze DontDestroyOnLoad damit z.B. In Game Optionen gespeichert werden bzw. Nicht zerstört werden, wenn man die Szene wechselt. Nun habe ich aber vor das wenn man das Spiel verlässt, und wieder das Spiel startet man nicht von vorne beginnen muss und wieder im Hauptmenü landet sondern dort weiter machen kann wo man aufgehört hat. Das sozusagen die Position gespeichert wird und man sofort im Spiel landet. Aber ich habe keine Ahnung, wie ich das hinbekommen soll. Mir kam da evtl. PlayerPrefs in den Sinn aber die speichern wenn dann auch nur beispielsweise die In Game Optionen wie Grafikeinstellungen oder Sound. Können PlayerPrefs auch die Position speichern und die Szene in der man zuletzt war? Es ist nicht einfach PlayerPrefs, DontDestroyOnLoad usw. Zu verstehen, habe mir auch die ganze Nacht den Kopf drüber zerbrochen. Deswegen versuche ich mein Glück hier und hoffe, dass man mir weiter helfen kann. Freue mich auf alle Antworten!

Spiele, PC, Technik, programmieren, C Sharp, Spieleentwicklung, Unity 3D, Unity

Ist es sinnvoll immer wieder neue Szenen in Unity zu erstellen?

Hallo, ich habe in Unity ein Projekt (3D) vor einigen Monaten gestartet. In diesem Projekt bzw. Spiel geht es darum, Planeten bzw. die Atmosphäre der Planeten, einschließlich Exoplaneten zu erkunden, die so realistisch wie möglich versucht werden dar zu stellen. Ich arbeite an dem Projekt alleine. Nun möchte ich mit dem Arbeiten an den Planeten bzw. Terrains beginnen und habe vor für jeden einzelnen Planeten (die Planeten bestehen nur aus Terrains) eine neue Szene zu machen. Also beispielsweise, ich habe 200 neue Szenen gemacht und in jeder Szene sind die Unterschiedlichen Terrains, die die Atmosphäre der Planeten darstellen soll, die man erkundet. Also 200 Szenen für 200 Planeten. Aber ist das die schlauste oder beste Herangehensweise? Ich meine, für jedes Terrain eine neue Szene zu erstellen sodass es irgendwann nicht mehr übersichtlich ist, ist doch nicht die beste Methode, oder? Ich habe jedoch keine Ahnung, wie ich es viel einfacher machen könnte und bei einem Update nicht jede Szene überschreiben müsste, wie Dynamische Generierung oder so. Ich bin noch relativ neu in Unity. Fazit: Ich möchte nicht unendlich viele Szenen erstellen müssen, sondern eine übersichtlichere Methode finden, um Terrains in Unity zu machen und nicht pro Terrain eine komplett neue Szene machen zu müssen. Wie Dynamische Generierung oder Scene Management, habe aber keine Ahnung wie das funktioniert. Kennt jemand eine übersichtlichere, leichtere oder Schlauere Methode? Wenn ja, würde es mir sehr weiter helfen. Danke für alle Antworten.

Spiele, Computer, programmieren, C Sharp, Spieleentwicklung, Unity 3D, Unity

Meistgelesene Beiträge zum Thema Programmieren