2023년 2월 3일 금요일

Getting Started with JavaScript: A Beginner's Guide

 Introduction:

JavaScript is a programming language that is widely used to build interactive and dynamic websites. It's a client-side scripting language that runs directly in the web browser and is an essential tool for web developers. In this guide, we will cover the basics of JavaScript and how to get started with writing your own scripts.


What is JavaScript?

JavaScript is a high-level, interpreted programming language that is primarily used to make websites more interactive. It's often used in combination with HTML and CSS to create dynamic and responsive user interfaces. JavaScript can be used to add interactivity to your website, such as displaying and hiding content, creating animations, and handling user input.


Getting Started:

To start writing JavaScript, you need a text editor and a web browser. You can use a simple text editor like Notepad or a more advanced editor like Visual Studio Code. Once you have your text editor set up, create a new file with a .js extension and start writing your code.


Variables:

In JavaScript, you can store values in variables. Variables are containers that hold values that can be used later in your code. To declare a variable, use the "var" keyword followed by the variable name. For example:


var message = "Hello, World!";

console.log(message);

Output: Hello, World!


Data Types:

JavaScript has several data types, including numbers, strings, booleans, and objects. For example:

var num = 42;

var str = "Hello, World!";

var bool = true;


Operators:

JavaScript has several operators that you can use to perform mathematical operations and comparisons. For example:

var num1 = 10;

var num2 = 20;

var result = num1 + num2;


console.log(result);

Output: 30


Functions:

Functions are blocks of code that perform specific tasks and can be reused throughout your code. For example:


function sayHello(name) {

console.log("Hello, " + name + "!");

}


sayHello("John");

Output: Hello, John!


Conclusion:

In this beginner's guide, we've covered the basics of JavaScript and how to get started with writing your own scripts. With these concepts under your belt, you can start experimenting and creating dynamic web pages. Stay tuned for more advanced topics and tutorials on JavaScript development.


Refrence Site:

https://javascript.info/

https://developer.mozilla.org/ko/docs/Web/JavaScript

2021년 7월 29일 목요일

My Simple App Privacy Policy

< My Company >('http://gwons.blogspot.com/'이하 'My Simple App')은(는) 「개인정보 보호법」 제30조에 따라 정보주체의 개인정보를 보호하고 이와 관련한 고충을 신속하고 원활하게 처리할 수 있도록 하기 위하여 다음과 같이 개인정보 처리방침을 수립·공개합니다.

○ 이 개인정보처리방침은 2021720부터 적용됩니다.

제1조(개인정보의 처리 목적)

< My Company >('http://gwons.blogspot.com/'이하 'My Simple App')은(는) 다음의 목적을 위하여 개인정보를 처리합니다. 처리하고 있는 개인정보는 다음의 목적 이외의 용도로는 이용되지 않으며 이용 목적이 변경되는 경우에는 「개인정보 보호법」 제18조에 따라 별도의 동의를 받는 등 필요한 조치를 이행할 예정입니다.

    1. 홈페이지 회원가입 및 관리

    만14세 미만 아동의 개인정보 처리 시 법정대리인의 동의여부 확인 목적으로 개인정보를 처리합니다.

    2. 재화 또는 서비스 제공

    콘텐츠 제공을 목적으로 개인정보를 처리합니다.

제2조(개인정보의 처리 및 보유 기간)< My Company >은(는) 법령에 따른 개인정보 보유·이용기간 또는 정보주체로부터 개인정보를 수집 시에 동의받은 개인정보 보유·이용기간 내에서 개인정보를 처리·보유합니다.② 각각의 개인정보 처리 및 보유 기간은 다음과 같습니다.

  • 1.<재화 또는 서비스 제공>
  • <재화 또는 서비스 제공>와 관련한 개인정보는 수집.이용에 관한 동의일로부터<지체없이 파기>까지 위 이용목적을 위하여 보유.이용됩니다.
  • 보유근거 : 서비스 제공
  • 관련법령 : 신용정보의 수집/처리 및 이용 등에 관한 기록 : 3년
  • 예외사유 :

제3조(개인정보의 제3자 제공)< My Company >은(는) 개인정보를 제1조(개인정보의 처리 목적)에서 명시한 범위 내에서만 처리하며, 정보주체의 동의, 법률의 특별한 규정 등 「개인정보 보호법」 제17조 및 제18조에 해당하는 경우에만 개인정보를 제3자에게 제공합니다.

은(는) 다음과 같이 개인정보를 제3자에게 제공하고 있습니다.

  • 1. <>
  • 개인정보를 제공받는 자 :
  • 제공받는 자의 개인정보 이용목적 : 이메일
  • 제공받는 자의 보유.이용기간: 지체없이 파기

제4조(개인정보처리 위탁)< My Company >은(는) 원활한 개인정보 업무처리를 위하여 다음과 같이 개인정보 처리업무를 위탁하고 있습니다.

  • 1. <>
  • 위탁받는 자 (수탁자) :
  • 위탁하는 업무의 내용 :
  • 위탁기간 :

은(는) 위탁계약 체결시 「개인정보 보호법」 제26조에 따라 위탁업무 수행목적 외 개인정보 처리금지, 기술적․관리적 보호조치, 재위탁 제한, 수탁자에 대한 관리․감독, 손해배상 등 책임에 관한 사항을 계약서 등 문서에 명시하고, 수탁자가 개인정보를 안전하게 처리하는지를 감독하고 있습니다.

③ 위탁업무의 내용이나 수탁자가 변경될 경우에는 지체없이 본 개인정보 처리방침을 통하여 공개하도록 하겠습니다.



제5조(정보주체와 법정대리인의 권리·의무 및 그 행사방법)



① 정보주체는 My Company에 대해 언제든지 개인정보 열람·정정·삭제·처리정지 요구 등의 권리를 행사할 수 있습니다.

② 제1항에 따른 권리 행사는My Company에 대해 「개인정보 보호법」 시행령 제41조제1항에 따라 서면, 전자우편, 모사전송(FAX) 등을 통하여 하실 수 있으며 My Company은(는) 이에 대해 지체 없이 조치하겠습니다.

③ 제1항에 따른 권리 행사는 정보주체의 법정대리인이나 위임을 받은 자 등 대리인을 통하여 하실 수 있습니다.이 경우 “개인정보 처리 방법에 관한 고시(제2020-7호)” 별지 제11호 서식에 따른 위임장을 제출하셔야 합니다.

④ 개인정보 열람 및 처리정지 요구는 「개인정보 보호법」 제35조 제4항, 제37조 제2항에 의하여 정보주체의 권리가 제한 될 수 있습니다.

⑤ 개인정보의 정정 및 삭제 요구는 다른 법령에서 그 개인정보가 수집 대상으로 명시되어 있는 경우에는 그 삭제를 요구할 수 없습니다.

⑥ My Company은(는) 정보주체 권리에 따른 열람의 요구, 정정·삭제의 요구, 처리정지의 요구 시 열람 등 요구를 한 자가 본인이거나 정당한 대리인인지를 확인합니다.

제6조(처리하는 개인정보의 항목 작성) < My Company >은(는) 다음의 개인정보 항목을 처리하고 있습니다.

  • 1< 재화 또는 서비스 제공 >
  • 필수항목 : 이메일
  • 선택항목 :

제7조(개인정보의 파기)

① < My Company > 은(는) 개인정보 보유기간의 경과, 처리목적 달성 등 개인정보가 불필요하게 되었을 때에는 지체없이 해당 개인정보를 파기합니다.② 정보주체로부터 동의받은 개인정보 보유기간이 경과하거나 처리목적이 달성되었음에도 불구하고 다른 법령에 따라 개인정보를 계속 보존하여야 하는 경우에는, 해당 개인정보를 별도의 데이터베이스(DB)로 옮기거나 보관장소를 달리하여 보존합니다.1. 법령 근거 :2. 보존하는 개인정보 항목 : 계좌정보, 거래날짜③ 개인정보 파기의 절차 및 방법은 다음과 같습니다.1. 파기절차 < My Company > 은(는) 파기 사유가 발생한 개인정보를 선정하고, < My Company > 의 개인정보 보호책임자의 승인을 받아 개인정보를 파기합니다.

제8조(개인정보의 안전성 확보 조치)< My Company >은(는) 개인정보의 안전성 확보를 위해 다음과 같은 조치를 취하고 있습니다.

1. 내부관리계획의 수립 및 시행 개인정보의 안전한 처리를 위하여 내부관리계획을 수립하고 시행하고 있습니다.

제9조(개인정보 자동 수집 장치의 설치•운영 및 거부에 관한 사항)



My Company 은(는) 정보주체의 이용정보를 저장하고 수시로 불러오는 ‘쿠키(cookie)’를 사용하지 않습니다.

제10조 (개인정보 보호책임자)

My Company 은(는) 개인정보 처리에 관한 업무를 총괄해서 책임지고, 개인정보 처리와 관련한 정보주체의 불만처리 및 피해구제 등을 위하여 아래와 같이 개인정보 보호책임자를 지정하고 있습니다.

  • ▶ 개인정보 보호책임자
  • 성명 :Jungjiwon
  • 직책 :Manager
  • 직급 :Developer
  • 연락처 : stopone77@gmail.com,

※ 개인정보 보호 담당부서로 연결됩니다.

  • ▶ 개인정보 보호 담당부서
  • 부서명 :
  • 담당자 :
  • 연락처 :, ,

② 정보주체께서는 My Company 의 서비스(또는 사업)을 이용하시면서 발생한 모든 개인정보 보호 관련 문의, 불만처리, 피해구제 등에 관한 사항을 개인정보 보호책임자 및 담당부서로 문의하실 수 있습니다. My Company 은(는) 정보주체의 문의에 대해 지체 없이 답변 및 처리해드릴 것입니다.

제11조(개인정보 열람청구) 정보주체는 「개인정보 보호법」 제35조에 따른 개인정보의 열람 청구를 아래의 부서에 할 수 있습니다.

은(는) 정보주체의 개인정보 열람청구가 신속하게 처리되도록 노력하겠습니다.
  • ▶ 개인정보 열람청구 접수·처리 부서
  • 부서명 :
  • 담당자 :
  • 연락처 : , ,

제12조(권익침해 구제방법)



정보주체는 개인정보침해로 인한 구제를 받기 위하여 개인정보분쟁조정위원회, 한국인터넷진흥원 개인정보침해신고센터 등에 분쟁해결이나 상담 등을 신청할 수 있습니다. 이 밖에 기타 개인정보침해의 신고, 상담에 대하여는 아래의 기관에 문의하시기 바랍니다.

1. 개인정보분쟁조정위원회 : (국번없이) 1833-6972 (www.kopico.go.kr)
2. 개인정보침해신고센터 : (국번없이) 118 (privacy.kisa.or.kr)
3. 대검찰청 : (국번없이) 1301 (www.spo.go.kr)
4. 경찰청 : (국번없이) 182 (cyberbureau.police.go.kr)

「개인정보보호법」제35조(개인정보의 열람), 제36조(개인정보의 정정·삭제), 제37조(개인정보의 처리정지 등)의 규정에 의한 요구에 대 하여 공공기관의 장이 행한 처분 또는 부작위로 인하여 권리 또는 이익의 침해를 받은 자는 행정심판법이 정하는 바에 따라 행정심판을 청구할 수 있습니다.

※ 행정심판에 대해 자세한 사항은 중앙행정심판위원회(www.simpan.go.kr) 홈페이지를 참고하시기 바랍니다.

제13조(개인정보 처리방침 변경)


① 이 개인정보처리방침은 2021년 7월 20부터 적용됩니다.

② 이전의 개인정보 처리방침은 아래에서 확인하실 수 있습니다.

2020년 2월 13일 목요일

Rust에서 소유권의 이동

Rust에서 소유권의 이동 (move)



let a = String::from("hello");
let b = a;

println!("{}", a);  // error

에러가 발생되는데 이유는 a의 소유권이 b로 이전된후 a는 메모리에서 해제 되었기 때문이다.

2019년 12월 16일 월요일

앞으로 우보천리(牛步千里) 마음가짐으로...

그동안 나 자신에게 바쁘다는 핑계로 블로그 작성을 소홀 하였지만
앞으로 한걸음씩 나간다는 생각으로 우보천리(牛步千里)의 마음가짐으로
다시 시작하려 한다...

2018년 6월 15일 금요일

Machine Learning Study

Machine Learning 공부할겸 정리 해봅니다.


  • 기계 학습(Machine Learning)이란 무엇인가?

기계 학습은 문제를 해결하기 위한 맞춤 코드(custom code)를 작성하지 않고도 일련의 데이터에 대해 무언가 흥미로운 것을 알려줄 수 있는 일반 알고리즘(generic algorithms)이 있다는 아이디어입니다.







2018년 3월 28일 수요일

Tell, don’t Ask

요구하지 말고 설명해라. Tell don't ask.

요구하는 식으로 프로그래밍 하지말고 설명하는 방식으로
프로그래밍 하라.

참고 사이트
https://martinfowler.com/bliki/TellDontAsk.html
https://pragprog.com/articles/tell-dont-ask
https://robots.thoughtbot.com/tell-dont-ask

심플 예제 설명
http://www.tzavellas.com/techblog/2007/02/17/a-simple-example-of-tell-dont-ask/

데미테르의 법칙 (Law of demeter).
http://blog.aliencube.org/ko/2013/12/06/law-of-demeter-explained/

함수형 프로그래밍 관련 용어 공부 정리

다형성이란 (polymorphic) ?

다형성이란 상위클래스 타입의 변수에 여러개의 하위클래스의 객체를 참조할 수 있도록 하는것을 이야기 한다.  즉 같은 타입이지만 오른쪽에 실제 런타임중에 new되는 객체(하위클래스)의
메소드가 실행되어 동일한 메소드가 다양한 형태를 표출한다는 것 이다.

다음과 같은 장점이 있다.

1. 여러 타입의 객체를 하나의 타입으로 관리하니 유지보수가 좋다.
(변경 사항 발생시 다형성으로 구현하지 않았을 때의 절반이상 코딩양 준다.)

2. 메속드의 매개변수(인자)로 상위 클래스, 추상 클래스, 인터페이스등이 온다면
그 하위클래스, 인터페이스를 구현한 클래스등이 인자로 들어 갈 수 있어 좀 더
유연한 프로그래밍을 할 수 있다. (당연히 이부분도 프로그램의 유지보수 차원에서 좋다)

3. 확장성이 좋은 코드를 작성할 수 있고, 결합도가 강하지 않은 프로그래밍을 할 수 있다.

참조 사이트
http://whatisthenext.tistory.com/34
http://asfirstalways.tistory.com/168
https://brunch.co.kr/@kd4/4