잡담
C언어 개발자가 Java로 개발을 하게 될 때
코딩의수평선
2022. 5. 27. 23:20
SI프로젝트에서 일을 하다보면 소스코드가 읽기 어려운 소스코드가 많다는 생각을 하게 된다.
SI프로젝트의 경우 개발자의 경력만 보고 뽑는 경우가 상당히 많다. 그 개발자가 20년간 C언어를 했다고 해도 20년이라는 경력이 있기 때문에 Java 프로젝트에 투입된다. 이런 사람이 java로 소스를 작성하게 될 경우 상당히 당황스러운 소스코드가 나온다.
java의 경우 str이라는 문자열 안에 '.txt'라는 문자열이 있는지 확인할 때 java에 익숙한 사람은
if(str.contains('.txt')){
}
라고 작성을 한다.
c언어 개발자의 경우는 아래와 같다.
if(str.indexOf(".txt") >= 0){
}
아니면 문자열이 같은지를 찾을 때
if("123".equals(str)){
System.out.println("자바 개발자");
}
if("123".equals(str) == true){
System.out.println("C 개발자");
}
if(str.indexOf("123") == 0){
System.out.println("C 개발자");
}
이러한 형식으로 소스를 작성한다.
c언어 개발자의 또 다른 특징은 배열을 활용하는 것을 좋아하는 것 같아 보인다.
String[] str = {"12", "34", "56", "78", "90"};
String findText = "90";
for(int i=0; i< str.length; i++){
if(findText.equals(str[i])){
System.out.println("찾았음");
}
}
나의 경우
String stt = "90";
switch (stt){
case "12" : System.out.println("찾았음"); break;
case "34" : System.out.println("찾았음"); break;
case "56" : System.out.println("찾았음"); break;
case "78" : System.out.println("찾았음"); break;
case "90" : System.out.println("찾았음"); break;
}
c언어 개발자가 소스를 java로 작성했을 경우 읽기가 어렵다...