Although unmanned aerial vehicles (UAVs) were mostly studied and used for military purposes before, they
have become very popular recently for both civil uses, such as law enforcement and crop survey, and for
potential commercial uses such as grocery delivery and Internet extension. Researchers investigating new
networking protocols for UAV networks usually need the help of simulations to test their protocol designs,
particularly when networks of large scales are desired in their tests. One choice that researchers need to
make in the simulation of UAV networks is the radio propagation model for the air links. In this paper we
compare the three radio propagation models that are available in the ns2 network simulation package and
investigate if the choice of one particular model would have a significant impact on the simulation results
for UAV networks.
NHN NEXT 게임 서버 프로그래밍 강의 자료입니다. 최소한의 필요한 이론 내용은 질문 위주로 구성되어 있고 (답은 학생들 개별로 고민해와서 피드백 받는 방식) 해당 내용에 맞는 실습(구현) 과제가 포함되어 있습니다.
참고로, 서버 아키텍처에 관한 과목은 따로 있어서 본 강의에는 포함되어 있지 않습니다.
넥슨코리아 사내 발표자료로 왓 스튜디오에서 파이썬으로 《야생의 땅: 듀랑고》 서버를 비롯한 여러가지 도구를 만든 경험을 공유합니다.
- 게임서버와 각종 툴, 테스트/빌드/배포 시스템을 만들 때 사용한 재료
- 파이썬 코드 품질 개선, 디버깅, 프로파일링, 최적화
- 파이썬 오픈소스 생태계와 왓 스튜디오가 하는 오픈소스 활동
Although unmanned aerial vehicles (UAVs) were mostly studied and used for military purposes before, they
have become very popular recently for both civil uses, such as law enforcement and crop survey, and for
potential commercial uses such as grocery delivery and Internet extension. Researchers investigating new
networking protocols for UAV networks usually need the help of simulations to test their protocol designs,
particularly when networks of large scales are desired in their tests. One choice that researchers need to
make in the simulation of UAV networks is the radio propagation model for the air links. In this paper we
compare the three radio propagation models that are available in the ns2 network simulation package and
investigate if the choice of one particular model would have a significant impact on the simulation results
for UAV networks.
NHN NEXT 게임 서버 프로그래밍 강의 자료입니다. 최소한의 필요한 이론 내용은 질문 위주로 구성되어 있고 (답은 학생들 개별로 고민해와서 피드백 받는 방식) 해당 내용에 맞는 실습(구현) 과제가 포함되어 있습니다.
참고로, 서버 아키텍처에 관한 과목은 따로 있어서 본 강의에는 포함되어 있지 않습니다.
넥슨코리아 사내 발표자료로 왓 스튜디오에서 파이썬으로 《야생의 땅: 듀랑고》 서버를 비롯한 여러가지 도구를 만든 경험을 공유합니다.
- 게임서버와 각종 툴, 테스트/빌드/배포 시스템을 만들 때 사용한 재료
- 파이썬 코드 품질 개선, 디버깅, 프로파일링, 최적화
- 파이썬 오픈소스 생태계와 왓 스튜디오가 하는 오픈소스 활동
2019년 파이콘 한국에서 진행된 튜토리얼 자료입니다. Part 2 내용으로 LRP에 대한 튜토리얼 발표자료입니다. 아래 링크를 통해 행사 관련 정보를 확인하실 수 있습니다.
http://xai.unist.ac.kr/Tutorial/2018/
https://github.com/OpenXAIProject/PyConKorea2019-Tutorials
Part 1: https://www.slideshare.net/OpenXAI/2019-part-1
Part 2: https://www.slideshare.net/OpenXAI/2019-lrp-part-2
Part 3: https://www.slideshare.net/OpenXAI/2019-shap-part-3
NHN NEXT 게임 서버 프로그래밍 강의 자료입니다. 최소한의 필요한 이론 내용은 질문 위주로 구성되어 있고 (답은 학생들 개별로 고민해와서 피드백 받는 방식) 해당 내용에 맞는 실습(구현) 과제가 포함되어 있습니다.
참고로, 서버 아키텍처에 관한 과목은 따로 있어서 본 강의에는 포함되어 있지 않습니다.
오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...Amazon Web Services Korea
서비스 런칭을 위해 라이온하트와 카카오게임즈가 어떻게 최적 성능의 인스턴스를 선택하고, Windows 운영 체제를 최적화하며, 왜 Amazon Aurora를 기본 데이터베이스로 채택하였는지를 설명합니다. 또한, 출시부터 운영까지의 과정에서 MMORPG가 어떻게 AWS 상에서 설계되고, 게임 서버 성능을 극대할 수 있었는지에 대해 전달해드립니다.
[React-Native-Seoul] React-Native 초심자를 위한 실습위주의 간단한 소개 및 구현법 안내Tae-Seong Park
## React-Native-Seoul meetup ##
- React-Native 초심자를 위한 실습위주의 간단한 소개 및 구현법 안내
## 발표자 ##
박태성
아이디어샘 R&D Dev Specialist
geoseong@ideasam.net
@geoseong by Slack
2019년 파이콘 한국에서 진행된 튜토리얼 자료입니다. Part 2 내용으로 LRP에 대한 튜토리얼 발표자료입니다. 아래 링크를 통해 행사 관련 정보를 확인하실 수 있습니다.
http://xai.unist.ac.kr/Tutorial/2018/
https://github.com/OpenXAIProject/PyConKorea2019-Tutorials
Part 1: https://www.slideshare.net/OpenXAI/2019-part-1
Part 2: https://www.slideshare.net/OpenXAI/2019-lrp-part-2
Part 3: https://www.slideshare.net/OpenXAI/2019-shap-part-3
NHN NEXT 게임 서버 프로그래밍 강의 자료입니다. 최소한의 필요한 이론 내용은 질문 위주로 구성되어 있고 (답은 학생들 개별로 고민해와서 피드백 받는 방식) 해당 내용에 맞는 실습(구현) 과제가 포함되어 있습니다.
참고로, 서버 아키텍처에 관한 과목은 따로 있어서 본 강의에는 포함되어 있지 않습니다.
오딘: 발할라 라이징 MMORPG의 성능 최적화 사례 공유 [카카오게임즈 - 레벨 300] - 발표자: 김문권, 팀장, 라이온하트 스튜디오...Amazon Web Services Korea
서비스 런칭을 위해 라이온하트와 카카오게임즈가 어떻게 최적 성능의 인스턴스를 선택하고, Windows 운영 체제를 최적화하며, 왜 Amazon Aurora를 기본 데이터베이스로 채택하였는지를 설명합니다. 또한, 출시부터 운영까지의 과정에서 MMORPG가 어떻게 AWS 상에서 설계되고, 게임 서버 성능을 극대할 수 있었는지에 대해 전달해드립니다.
[React-Native-Seoul] React-Native 초심자를 위한 실습위주의 간단한 소개 및 구현법 안내Tae-Seong Park
## React-Native-Seoul meetup ##
- React-Native 초심자를 위한 실습위주의 간단한 소개 및 구현법 안내
## 발표자 ##
박태성
아이디어샘 R&D Dev Specialist
geoseong@ideasam.net
@geoseong by Slack
기본적인 프로젝트 스캐폴딩 도구로 빠른개발을 위한 스프링 프레임워크 서브 프로젝트 중에 하나인 Spring Boot를 사용하겠습니다. 스프링 부트는 Convention over Configuration개념을 적용하여 개발자가 처리해야 하는 반복적인 성격의 설정작업을 대신 수행하여 개발자의 수고를 덜어주는 기술입니다.
최근 개발 초기단계에서부터 코드작성을 하지는 않습니다. 처음부터 코드를 작성하면 나중에 소스 코드 덩치가 커지거나 협업을 해야 하거나 배포를 해야 할 때 관리상의 문제가 많이 생긴다는 것을 개발자들은 이미 경험으로 알고 있기 때문입니다. 그러한 이유로 코드를 작성하기 전에 먼저 코드, 리소스, 디펜던시, 연동환경 및 테스트를 거친 후 배포작업을 미리 염두에 두고 구조적으로 프로젝트를 구분하는 스캐폴딩 작업을 선행합니다.
프로젝트 관점에서 살펴보면 실제 코드를 작성하기 전에 해야 할 여러 설정 작업들이 도출 됩니다. 스프링부트는 여러 설정작업들 중 개발자를 대신해 관습을 적용하여 자동화 할 수 있는 부분들을 제공하는 기술로써, 개발자의 수고를 덜어 보다 빠른 개발이 진행될 수 있도록 해줍니다.
Session 4 - 최효석 React Hooks 마법. 그리고 깔끔한 사용기
2019년 9월 6일 네이버 쇼핑 개발자 meet up 행사인 'SHOWROOM' 에 발표된 자료입니다.
보다 자세한 내용은 http://nshop-developer.github.io 을 참고해주세요.
(2019년 9월 30일 오후 오픈 예정)
1. 스프링프레임워크(스프링부트) RESTful 웹서비스 구현 실습
2. 자마린에서 스프링 웹서비스를 호출하고 응답 JSON을 받아 XAML 데이터 바인딩을 이용하여 휴대폰 화면에 출력하는 실습
웹서비스는 “스프링프레임워크”로 모바일 앱은 “자마린”으로!
웹은 자바, 스프링 프레임워크를 기반으로 구축된 곳이 많다. 왜냐 하면 성능도 좋고 데이터베이스를 다루기에는 용이하기 때문이다. (스프링 프레임워크 + 마이바티스, Spring Data JPA, ORM 기술 등)
자마린 앱에서 원격의 오라클, MS-SQL, MySQL등의 DB에 직접 접속하여 개발하고 싶은 개발자도 있겠지만 이는 적절하지 못한 방법이며 지원 역시 빈약 하기 때문에 문제에 직면할 확률이 높다. 웹서비스를 만들고 이를 자마린 앱 에서 호출하는 것이 현명할 것 같다.
닷넷 기반의 자마린 앱 실습 이지만 스프링프레임워크(스프링 부트) 기반으로 RESTful WebService를 만들고 이를 자마린 앱 응용프로그램에서 호출하여 결과(응답)를 JSON을 받아 파싱하여 데이터 바인딩을 이용하여 휴대폰 화면에 출력해보자. (닷넷 개발자 이지만 이번 기회에 자바 스프링 프레임워크 MVC기반의 RESTful WebService를 경험해 보자. 별것 아니다.)
자바, 스프링 프레임워크(스프링부트) 기반으로 간단히 RESTful 기반 웹서비스를 만드는데, 스프링의 레스트컨트롤러(RestController)를 이용하여 CRUD 기능의 컨트롤러, DAO클래스를 만들고 브라우저에서 먼저 테스트를 한다. 이것이 확인 되면 Xamarin.Forms로 앱을 만들어 안드로이드 폰(또는 에뮬레이터)을 통해 웹서비스를 호출하는 CRUD를 테스트 하는 실습이다.
CRUD 전체 기능을 테스트 하는 것은 여러분들께 맡기고 본 실습에서는 전체 사원데이터 검색, 한명의 사원 검색하는 정도를 구현해 보기로 한다.
Klaytn 101 #2 Blockchain Application(BApp) 동작원리와 구성요소 이해하기
1. BApp 개요: BApp의 동작원리와 BApp을 구성하는 요소들에 대해 설명
2. Count BApp: Klaytn Docs에 소개된 Count BApp 튜토리얼을 step-by-step으로 따라가며, web 기반 BApp 구현방법에 대해 설명
* 54 페이지 두번째 줄의 함수명 callPlus은 callMius로 변경해 주세요.
SK Planet에서 주최한 TechPlanet 2012에서 발표했던 자료입니다. 소셜 큐레이션 서비스에 대한 간략한 소개와 관련 기술, 향후 전망 등을 담고 있습니다.
! 정정합니다. 32페이지의 pypi install ... 은 pip install 이 올바른 코드입니다.
7. 개발환경
1. Xcode는 당연히 필수입니다.
2. node, watchman, flow를 설치합니다.
3. React Native 클라이언트 도구를 설치합니다.
4. 프로젝트를 생성합니다.
brew install node 필수. iojs로 대체 가능
brew install watchman 권장. 파일 변경 감시
brew install flow 선택. 정적 타입 체커
npm install -g react-native-cli
react-native init TidevProject
8. 개발환경
프로젝트 폴더 및 파일 구성
TidevProject/
TidevProject.xcodeproj
TidevProjectTests/
iOS/
main.jsbundle
AppDelegate.h
AppDelegate.m
...
node_modules/
react-native/
...
index.ios.js
package.json
프로젝트 파일
iOS용 주요 파일
앱 JS 파일 번들
nodeJS 모듈
앱 시작 JS 파일
9. 개발환경
5. react-native-icons, underscore 패키지를 설치합니다.
6. 패키지 서버를 실행합니다.
7. 작성된 패키지 파일은 웹을 통해 접근할 수 있습니다.
npm install react-native-icons underscore --save
npm start
open "http://localhost:8081/index.ios.bundle"
11. React Native의 특징
1. React와 같은 방식으로 컴포넌트를 만듭니다.
2. React 컴포넌트 특수 메소드와 속성도 그대로 동작합니다.
https://facebook.github.io/react/docs/component-specs.html 참고
3. NodeJS처럼 require를 통해 다른 모듈을 참조합니다.
var ComponentName = React.createClass({
render: function() {
return (
<View>
<Text>Hello, {name}</Text>
</View>
);
}
});
미리 정의된 네이티브 컴포넌트 사용
var React = require('react-native');
12. 4. 일부 ES6, ES7 기능을 사용할 수 있습니다. (계속)
// Destructuring Assignment
var React = require('react-native');
var { View, Text } = React;
// var View = React.View, Text = React.Text; 와 같다.
// 클래스
class Component extends React.Component {
render() {
return <View />;
}
}
// 간편 메소드 선언
var Component = React.createClass({
render() {
return <View />;
}
});
컴포넌트 공통 처리를
직접 해야 해서 권장하지 않음
React Native의 특징
13. 4. 일부 ES6, ES7 기능을 사용할 수 있습니다. (계속)
// Arrow function : 더 간결한 코드 + this 유지
/* (a, b) => this.method(a, b)
(function(a, b){ return this.method(a, b); }).bind(this)
arg => { this.method(arg) }
(function(arg){ this.method(arg); }).bind(this)
*/
var Component = React.createClass({
onSelect(event, switch) {
...
},
render() {
return <View onPress={(e) => this.onSelect(e,true)} />;
}
});
// 템플릿 문자열 (멀티라인도 가능)
var who = 'world';
var str = `Hello ${who}`;
React Native의 특징
14. 4. 일부 ES6, ES7 기능을 사용할 수 있습니다.
https://facebook.github.io/react-native/docs/javascript-environment.html 참고
5. AppRegistry를 통해 시작 컴포넌트를 설정해야 합니다.
// Promise 객체
Promise.resolve(3)
.then(data => {
...
})
.catch(reason => {
console.log(reason);
});
var {AppRegistry} = require('react-native');
...
AppRegistry.registerComponent('Tidev', () => App);
React Native의 특징
15. 6. 스타일은 객체처럼 만들고 프로퍼티로 전달합니다.
https://facebook.github.io/react-native/docs/style.html 참고
var styles = StylesSheet.create({
titleContainer: {
flex: 1,
flexDirection: 'row'
},
title: {
fontSize: 16,
color: 'white'
}
});
...
<View style={styles.titleContainer}>
<Text style={styles.title}>Hello</Text>
<Text>World</Text>
</View>
React Native의 특징
34. 회고
1. React를 알면 빠르게 만들 수 있다.
= 모르면 학습 시간이 필요하다.
2. Flexbox 레이아웃과 CSS 비슷한 스타일링은 편하다.
3. 아직 다소 불안정하다.
- 여전히 수정해야 할 버그가 많다.
- 다행히 상당히 빠르게 패치가 되고 있다.
- 크롬 디버거 연결에 안정성 좀... ㅠ_ㅠ
4. 네이티브를 아예 모르면 힘들다.
- 확장 기능을 사용하려해도 알아야 한다.
- Objective-C에 대한 눈치 정도라도 있어야 한다.
- 많이는 몰라도 된다.
35. 오픈 소스로 공개되어 있습니다.
오늘 코드는
http://github.com/taggon/tidev