Javascript 는 그 형태가 Java 와 비슷한 형태를 띄고 있으면서, 하는 일은 완전히 다른 녀석입니다. 자바의 이해를 하고있다고 해서 Javascript 를 이해하는 것도 아니고, C 언어를 이해하고 있다고 해서 C#의 이해를 하고 있는 것이 아닌 것처럼, 이 둘의 관계는 정말 다릅니다.

 

작성자는 뭘 해야하는지 모르기 때문에 이거저거 다 해보고 있는데요, 오늘은 For..in...의 복습을 해보려고 합니다 

자바스트립트의 Obj 는, 그 값안에 Key 값과 Value를 지니고 있는데요. 이 For...in.. 의 동작을통해 안에 있는걸 반복적으로 꺼내 올 수있을 것입니다. 

 


점수가 총점 60점이 넘지 않으면 불합격을 출력하는 코드를 봅시다. 

내가 푼 풀이 방식 
let hyesoonScore = {
	'데이터 모델링의 이해': 10,
	'데이터 모델과 성능': 8,
	'SQL 기본': 22,
	'SQL 활용': 18,
	'SQL 최적화 기본 원리': 20,
};

let minsoonScore = {
	'데이터 모델링의 이해': 14,
	'데이터 모델과 성능': 8,
	'SQL 기본': 12,
	'SQL 활용': 4,
	'SQL 최적화 기본 원리': 16,
};

function passChecker(scoreObject) {
  
  let score = 0; //초기 값을 지정해주는 변수를 정해주고
  for (let key in scoreObject){
    score+= scoreObject[key];
  } //obj 안에 있는 녀석들을 모두 꺼내 줍니다
    
    if (score > 60) {
    console.log("축하합니다! 합격입니다!");
  } else {
    console.log("아쉽지만 불합격입니다..");
  }
  
}

passChecker(hyesoonScore);
passChecker(minsoonScore);
코드잇 풀이 
let hyesoonScore = {
  '데이터 모델링의 이해': 10,
  '데이터 모델과 성능': 8,
  'SQL 기본': 22,
  'SQL 활용': 18,
  'SQL 최적화 기본 원리': 20,
};

let minsoonScore = {
  '데이터 모델링의 이해': 14,
  '데이터 모델과 성능': 8,
  'SQL 기본': 12,
  'SQL 활용': 4,
  'SQL 최적화 기본 원리': 16,
};

function passChecker(scoreObject) {
  // 여기에 코드를 작성해 주세요.
  let totalScore = 0;

  for (let subject in scoreObject) {
    totalScore += scoreObject[subject];
  }

  if (totalScore >= 60) {
    console.log('축하합니다! 합격입니다!');
  } else {
    console.log('아쉽지만 불합격입니다..');       
  }
}

passChecker(hyesoonScore);
passChecker(minsoonScore);

 

변수의 이름만 다르지 접근 방식은 동일했다. 

'프론트엔드 > JavaScript' 카테고리의 다른 글

피보나치 수열  (0) 2024.03.10

 

2024년 3월 6일

 

유학을 가겠다고 마음을 먹은 지가 반년이라는 시간이 지났다. 하루하루가 너무나 빨리 가는 것 같으면서도 또한 느리게 흐르는 이 감정은 마치 내가 꿈을 꾸고 있는 듯한 감정이 들게 한다. 내 주위 모든 것들이 어색했던 게, 이제는 어느 정도 익수함의 순간으로 나아가고 있으니 이 유학의 적응 기간이라는 3개월이 얼마나 고된 하루의 연속이었는지 알려주는 것 같다.

 

하루의 소중함을 깨달아, 아니 시간의 소중함을 늦게라도 깨달아 뭐라도 하려고 하면, 일단 하기 싫은 감정이 몰려오기도 하는데 그래도 뭐 이 악물고 해내고 할려고는 있다. 생각의 관념을 그 근간부터 바꿔나아가는데에는 필요한 고통과 스트레스이겠거니 하는 생각으로 말이다.

 

유학을 끝내고 호주에 남게 될지, 아니면 한국에 돌아가게 될지 아니 2학년이 되면 무슨 일이 일어날지 한 치 앞도 모르는 상황인데, 어찌 저지 공부는 하고 있다. 그리고 배우는 것은 즐겁다.


새로운 인연을 만들어 나가는 것도 즐겁고. 

 

평소에 뭐해요?

지금 하고 있는 것은

1. 코드잇 

2. 코드 아카데미 

3. 듀오링고 독일어 - 일본어

4. 말해보라 영어

5. 쇠질.

6. 블로그

7. 개인 유니티 프로젝트 

(7번 같은 경우는 머릿속에 "그나마 익숙한" 유니티의 사용 방법을 좀 익혀둠으로써 아키텍처의 이해를 높이기 위함)

 

많아 보이는 것처럼 보이는 것은 사실이고, 실제로도 많은 양이긴 한데, 이것들을 굳이 구태여 동시에 하고 있는 것은 스트레스받는 하루의 시간을 빨리 보내고 싶음이라... 그저 한국에 있는 내 친구들이 그리울 뿐이다. 특히 , 가끔가다 지나가는 헬리콥터 소리와 추운 날씨, 한강의 모습, 골목 골목길의 정, 이 지극히 당연한 것들이 이제와서는 그렇게 특별해질 수가 없지 않은가. 

 

장소는 그립지 않고 사람이 그리운 것은 어쩔 수 없나 보다

 

향수병이 왜 걸리는 것인지, 충분히 이해를 하고 있는 하루를 보내고 있다. 한국에서 떠나기 전에 가족과 시간을 보내지 않았었는데, 애초에 그렇게 나와의 시간을 소중히 여기기 못하는 것도 있었고 그리고 그렇게까지 중요시 여겨지지 않는다는 감정은 매번 있었기 때문에 별 수 있나 싶기도 하다. 물론 표현을 못하시는 거지 분명 어딘가 사랑하는 구석이 있어 그러신 거겠지. 

 

코딩하는 몇 친구들이 얼마나 대단한지 매번 깨닫기도 하고, 이 유학생활을 이겨내고 현지에서 취업을 하신 분들이 정말 독하고 독한 사람이구나 하는 생각을 하고 있다. 진짜, 그만큼 유학 생활이 드라마처럼 파티에 가고 꿈만 같고 그러지는 않다. 무엇보다 생각이 기준점을 달리 해야 한다는 점은 스트레스를 넘어 고통이긴 한데, 이 고통의 끝에서는 적응해 있는 나를 발견하는 경험을 한번 했었으니까 그 과도기라고 생각한다. 

'

최근 들어 제일 많이 하는 생각이 뭐예요?

서양애들의 대다수는 근간이 "자기들이 국제학생들보다 영어를 잘할 것이다."라는 착각을 하고 있다. 아니,  "난 동양인 보다 나을 것이다 "라는 생각이 뿌리 잡혀있는 애들이 있다. 이들이 인종차별을 하는 것이 아니라, 그 머릿속에 정의된 공역 자체가 잘 못 되어 있다는 사실을 잘 모르고 있다. 물론 이들은 학사를 공부하는 이들이기에 생각이 너무 어려 그런 생각을 한다고 난 생각하지만 말이다.

 

어린아이들의 생각을 굳이 구태여 바꿔줄 의향은 없고,
실력으로 쳐 바르는 의지만을 갖고 공부하고 있다.
세상이 넓다는 것을 몸소 느끼게 해 주마

 

 

코딩은 어때요, 좋아요? 
장점 : 내 생각의 논리적 과정과 순서를 "의식"하게 해 준다. 그러니까 본래 " 커피를 마신다"라는 머릿속의 생각을, 1. 컵을 가져온다.
2. 물을 넣는다
3. 전자레인지에 넣는다
4. 꺼낸다
5. 커피를 넣는다
6. 마신다 
라는 과정으로 세분화해서 생각하는 요령이 조금씩 생기고 있다

단점: 근데 몇 코드는 왜 작동되는지 모르겠음. 진짜, 작동되면 안 되어야 할 텐데 결과는 의도값이 나옴. 이게 좋은 게 아니라. 예를 들자면, "모기장을 만들어야지" 하는 것을 목표로 삼고 내가 모기장을 만들었지만,  그 모기장에 볼링공 구멍이 생겼지만 깨닫지 못하는 것일 수도 있기 때문. 진짜 이건 누가 대신 봐줘야 함 

기분: 코드를 쓰는 것은 음악을 연주하는 것과 같다고 생각이 든다. 악보를 쓰는 그 악기의 아름다움과 조화를 보듯이, 코드를 쓴다는 것은 그 조화와 아름다움을 보는 것 같다

 

지금까지 한 번쯤 만져본 코딩 언어의 종류는 다음과 같다. 

1. Python

2. Java

 - 대학교 필수였기 때문 

 

그리고 찍먹(찍어보기) 

3. Java Script 

4. Type Script  - 트위터에 보이길래 호기심에 건들어봄. 

5. C# - Unity의 좋은 친구, Game Develop에 필요하다고 해서 찍먹 해봄

6. XML - Python으로 할 수 있다고 해서 건들어봄 

 

무슨 언어가 내 성향에 맞는 것인지 잘 모르기 때문에, 이거 저거 찔러보고 있다. 특히 최근 들어서는 SQL 언어를 배우고 있기도 한데, 언어를 배우다 보니 Linear Algebra 나 Algorithm의 필요성을 느끼고 있다. 본래 언어를 좋아하는 성격이 있어서 컴퓨터 언어를 배운다는 건, 내가 모르는 세계의 외국어를 배우는 것이라고 생각하고 배우고는 있는데, 이 해석이 어찌어찌 나하고 잘 맞아 빨리 배우고는 있지만 아직까지 나에게 있어 "외국어"인 컴퓨터 언어를 사용하는 사실 자체가 스트레스를 많이 받게 한다. 

 

(잠깐, 이 생각이면 수학도 따로 공부할 수 있지 않을까?)

 

 

대학원 가실래요?

죽기 전에 "박사"님 소리 듣고 싶기도 하고, 나중에 자식 낳으면 대학원 보내고 싶은 것은 있는데, 일단 내가 경험해보지 않은 것을 자식에게 강요할 수 없는 노릇이니 대학원에 한번 가보고 박사를 따고 세상을 보고 싶긴 하다. 

 

물론, 학위가 부자로 만들어 주지는 않는다. 그게 되었다면, 전 세계가 박사님들로 넘쳐나서 박박 박사님 슈퍼 박사 울트라 짱 박사 이런 거 있지 않을까? 대학만 가면 성공하고 취업하고 다 될 것이라는 것은 예전이야기지, 내가 활용할 수 있는 문제 해결 능력과 사람을 얻어가는 것이라고 생각한다. 

 

그러니까 다들 좋은 대학 보내려고 그렇게 공부를 시키는 것이겠지 

1학년 2학기, 어떻게든 버텨보자.
앞으로 3년이다. 3년이면 된다.

 

 

오늘 짤방은 소녀소녀한 감성으로

 

 


 

자바는 Python 과 달리 그렇게 친절한 코드는 아닙니다. 물론, 이 친절함의 비중은 입장에 따라 달라지겠지만. Python 이 사용자에게 친절한 것이라면 Java 나 C# 계열의 언어들은 컴퓨터에게 친절한 언어가 되겠습니다. 말이 컴퓨터지, 사실상 코드를 배우다 보면 혼자서 알아서 할 줄 아는게 없는 친구니까요.

 

오늘은 Java의 상속과 Override 를 내 스스로에게 설명해보는 과정입니다 


 

Java Inheritance (Subclass and Superclass)

W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.

www.w3schools.com

우리의 소중한 친구, W3에서 코드를 가져와서 봅시다. 

class Vehicle {
  protected String brand = "Ford";        // Vehicle attribute
  public void honk() {                    // Vehicle method
    System.out.println("Tuut, tuut!");
  }
}

class Car extends Vehicle {
  private String modelName = "Mustang";    // Car attribute
  public static void main(String[] args) {

    // Create a myCar object
    Car myCar = new Car();

    // Call the honk() method (from the Vehicle class) on the myCar object
    myCar.honk();

    // Display the value of the brand attribute (from the Vehicle class) and the value of the modelName from the Car class
    System.out.println(myCar.brand + " " + myCar.modelName);
  }
}

이 코드은 Vehicle 이라는 차량(탈 것) 이라는 것에서, Car(자동차)을 주고있습니다. 

 

논리적으로 생각을 해보면,

자동차도 탈 것의 하나니까.

그 넓은 개념을 상속받는 것에 문제는 없어보입니다. 

 

비슷한 예시를 들어봅시다

 

Phone 은 SmartPhone 을 

 

Printer 는 3DPrinter 을

 

이렇게 다음세대를 가져올 수도 있고 

 

Animal 은 Dog를 가져올 수도 있을 것입니다

 

대충 감이 잡히시나요? 

 

이 Inherit 이라는 단어가 의미하는 것처럼

(컴퓨터쪽에서는 상속이라고 번역함 - 유전이라는 뜻도 있음)

 

본래의 코드가 의미하는 성질을 다음세대에 재활용 할 수 있게 해주는 마법같은 녀석입니다. 

그렇다면 코드의 재활용과 유지보수가 어렵지 않겠죠?

이 녀석의 포괄적인 개념은 여기까지하고, 이제 활용에 들어가는 것을 공부해 봅시다.


Animal(동물) 이라는 코드를 Dog(개)가 상속하고 있습니다

class Animal {
    void makeSound() {
        System.out.println("Some generic animal sound");
    }
}

class Dog extends Animal {
    @Override
    void makeSound() {
        System.out.println("Woof! Woof!");
    }

    void wagTail() {
        System.out.println("Dog is wagging its tail.");
    }
}

public class Main {
    public static void main(String[] args) {
        Animal genericAnimal = new Animal();
        Dog myDog = new Dog();

        // Calling the makeSound method of the Animal class
        genericAnimal.makeSound();

        // Calling the overridden makeSound method of the Dog class
        myDog.makeSound();

        // Calling the wagTail method specific to the Dog class
        myDog.wagTail();
    }
}

 

어? 보니까 이상한 녀석이 있네요. 듣도 보지도 못한 @Override 라는 녀석이 있습니다. 

이 친구는 어떤 친구일까요? 

직역을 하면, 덮어 씌우다. 라는 말을 지니고 있습니다. 

즉, 본래 Animal 안에 있는 메소드를 자식 클래스에서 다르게 쓰였을때. 

 

컴퓨터에게 "이 코드는 다시, 다르게  쓰인 녀석이야" 알려주는 표식입니다. 

이 Override는 Super()와 함꼐 자주 쓰이니까 기억해두세요! 

Super()는 다음 포스팅에서 공부해보겠습니다.

 

 

UTS에 유학을 온 지가 벌써 5개월이라는 시간이 지났었고,

매일 같이 포스팅을 하겠다는 다짐은,

지나간 다짐으로 남아는 있지만,

그래도 어느 정도까지는 호주의 이야기를 할려고 한다.

나의 여정이 이들에게 좋은 이정표가 될지는 모르겠지만 말이다. 

 

내가 다니고 있는 학교는 UTS - University of Technology , Sydney 로써 한국어로 하면 

시드니 공과 대학교를 다니고 있다. 시드니 중심지에 위치하고 있으며 곳곳에 건물을 가지고 있는 대학이다.

대학교에 오게되면, 무엇보다 의식주가 걱정일 텐데, 옷이야 워낙 한국사람들이 잘 입고 다니니까 고민해야 할 대상이 아니지만. 역시 학식을 먹는 것은 고민이 될 것이다. 그런고로 오늘의 포스팅은, 내가 갔던 식당의 이야기 


와! 생일이다 (3월 4일)

 

누군가는 인생에서 100년을 산다면 100번 밖에 찾아오지 않는 순간들이라고 말을 하며 그 날의 가치를 축하하는 것이 중요하다고 말을 하겠지만은, 이미 해외에 몸을 담근 이상 지금 생일이다 기념일이다 뭐 챙기기 우선은 생존이 우선시되는 상황이다. 나는 개인적으로 한국 사람들은 한국에 있어야 한다고 믿는 편인데, 이는 알게 모르게 사람을 대하는 태도나 예의 그리고 생각하는 과정 자체가 전부 "한국식"인 사람들이 해외에 생활하는 것 자체가 엄청난 스트레스로 작용한다는 굉장히 당연스러운, 실용적인 믿음과, 삼신할머니가 해외땅에 나가면 챙겨주지 못한다는 나만의 종교적인 믿음 때문이랬다.

 

물론 그렇다고 해서 도교를 믿는 것은 아니지만,

대한의 사람은 대한의 땅에서 있어야 한다는 것은

그 신념은 이 생각에 기원을 두고 있다. 

 

생일 선물을 다른 사람에게서 기대하는 것 또한 무례한 행위

 

나 스스로가 생일이 되었다고 해서 선물이 당연하다고 원하는 것은 어린 마음이나 어른이 된 지금이나 별 차이가 없을 것인데, 그래도 어른스러움을 강요받는 우리에게 있어 그렇게 기대하지 않는 것은 중요할 것이다. 자시 스스로만 생각하는 무례한 사람이 되지는 않기 위해 하는 마지노선의 생각이니까, 주변인들이 이 마음을 아는지 모르는지는 모르겠지만 말이다

 

그럼 식당 소개 시작해 보자


 

UTS라는 대학에 다다른 한국분들이라면 분명, 그 건물이 보여주는 위상과 지리적 입지에 반해서 오시게 된 분들이 대다수일 것이라고 나는 생각한다. 그도 그럴 것이, 건물이 주는 아름다움은 정말 중요하니까. 대학교는 캠퍼스가 따로 존재하는 것이 아니라 도시에 넓게 배치되어 있어서, 한국적인 캠퍼스 생활과 대학의 삶의 낭만은 없겠지만은. 그래도 마음의 심심한 위로가 되는 게, 이러한 구도를 지니고 있는 대학은 단언하건대 UTS 혼자만이 아니다.  미국에는 뉴욕대학교도 있고, 일본에는 토요 대학도 있고, 그 외 세계에서 몇몇 보이는 학교의 형태니까.

 

ㄴBuilding 5의 첨탑

필자는 IT를 UTS에서 공부 중이고,  Building 5는 비즈니스와 디자인을 공부하시는 분들에게 인연이 더 있어 "나"와 고는 그렇게 상관없는 공간이지만, 그래도 Student Centre (학생지원센터) 혹은 괜찮은 공부 구역 Bldg 5 Section D 지하에 숨어서 나만의 개발을 하는 것을 좋아하기 때문에 곧 잘 자주 방문 하는 편이다. 

 

이 건물에는 종 탑이 하나 존재하는데, 이 종탑 역시도 이전에 Faculty of law, 즉 법학대학이었을 시절에 랜드마크였다고 한다.  그렇게 높아 보이지는 않은 이 종탑의 이야기는 나중에 포스팅하도록 하고,  이 종탑을 굳이 구태여 언급한 이유는 그 건너편에 있는 햄버거집으로 가는 표식으로 하기에 걸맞기 때문이랬다.

 

 

형, 거기 제가 자주 가는 햄버거집 같이 가요

 

 

하고 들어온 이곳, 옆으로는 호주사람들의 식료품점 중하나인 Metro 가 들어서 있고, 그 옆으로 보이는 가게, Ultimo Rd를 따라 가다보이면 정말 고든램지 저리 가라 할 정도의 수제 버거 집이 나온다. 호주 자체가 고기의 질이 좋고 가격도 싼 것은 알고 있었지만, 워낙에 요리를 잘하시는 사장님 (몰랐는데 한국분이었음)의 솜씨로 구운 고기사이로 떨어지는 육즙의 열기로 살짝 녹은 치즈가 햄버거의 형태를 고정하고 있는 모습으로 보면 그게 바로 눈으로 먹는 쾌락이 아닐 수가 없다

 

 

 

 

햄버거 주세요 뿌우
칠리소스

 

이렇게 해서 가장 중요한 가격은 얼마인가 하면, 대략 30 AUD , 한화 24,000원이 되는데, 그 가격이 높아 보이다 하더라도 해외에서 먹는 버거의 맛과 퀄리티를 생각하면 나쁘지 않다. 게다가 이 기름진 고기의 맛은 정말 싫다고 말을 못 하겠다.

 

 

Home - Roadhouse Restaurant Burgers & Ribs

Discover Sydney's best burgers at Road House Burger and Ribs, nestled in Chinatown's heart. Indulge in our flavorful menu, order online, or reserve your spot today. Enjoy indoor seating for 65 and outdoor options for 15. Join us for an unforgettable dining

roadhouseburgersandribs.com.au

 

덤으로 점심시간에 방문을 하면 버거가 무려 20달러, 한국돈으로 생각하면 높아 보이겠지만, 그 입지가 대학교 근처이기 때문에 일단 합격점을 줄 수밖에 없었다.

 

흑흑 넘 마쉿서 

 

물론 어디까지나 배고픈 중생, 배고픈 학생들의 시야에서야 입안에 들어가는 고기면 감사히 먹는 것일 가능성이라도 있겠다마는, 그건 그거대로 아니 이거면 이거대로 내가 인지한 것이 곧 진실이 아닐까 하는 마음으로, 이 인지주의적 관념으로 해석된 버거의 맛은 그저 미미

정말 고기가 그리웠다

 

아무튼, 인생에 100번 밖에 오지 않는다는 "나"님의 생일을 축하해 줄 만한 고기의 맛을 지닌 시드니의 식당 되었다. 

 

이 식당의 기업가치로 오늘의 포스팅 마무리

 


At Our Restaurant, We Don’t Just Serve Food, We Create Memories. Our Cozy Atmosphere And Friendly Staff Make Every Visit A Pleasant And Enjoyable One.
우리 식당에서는, 음식 만을 대접하는 것이 아니라, 추억을 만듭니다.
식당 속 따뜻한 분위기와 친근한 직원들이 매 방문을 즐겁고 행복하게 만들어 줄 거예요 

 

 

1984년부터 장사를 하셨다고 하는데, 감사할 나름이다. 내가 이 식당을 찾은게 아니라,

햄버거가 나를 찾아온 반가운 맛을 느낄 수 있는 곳. 작성하다보니 배가고파졌다.

다시 한번 또 가야지! 

+ Recent posts