분류 전체보기 59

네트워크 처리량과 병목현상

이제 네크워크 처리량과 지연, 병목 현상, 토폴로지에 대해서 정리해보겠습니다. 네트워크 처리량은 패킷 처리량이라고 할 수도 있습니다. 패킷 물리적인 네트워크를 통해 데이터를 전송할 때, 큰 데이터를 한 번에 보내기보다는 작은 조각으로 나누어 전송하는 것이 효율적입니다. 이 작은 조각을 "패킷"이라고 부릅니다. 각 패킷은 데이터의 일부를 담고 있으며, 패킷에는 몇 가지 중요한 정보가 포함되어 있습니다. 헤더 (Header): 패킷의 헤더에는 출발지 주소와 목적지 주소, 패킷의 크기, 패킷의 순서 정보 등이 포함됩니다. 이 정보는 패킷을 전송하고 수신하는 동안 어디로 가야 할지를 결정하는 데 사용됩니다. 데이터 (Data): 패킷의 본문에는 실제 데이터의 작은 일부가 포함됩니다. 예를 들어, 웹 페이지의 경..

질문 정리 2023.08.28

MVC, MVP, MVVM 패턴에 대한 정리

MVC 패턴 MVC (Model-View-Controller) 패턴은 사용자 인터페이스를 가진 애플리케이션을 설계하는 데 일반적으로 사용되는 설계 패턴입니다. 이 패턴은 애플리케이션의 개발을 세 가지 구성 요소로 분리함으로써 관심사를 분리합니다. Model: 이 부분은 애플리케이션의 데이터와 비즈니스 로직을 처리하는 역할을 합니다. 데이터를 저장하고 검색하는 메서드, 비즈니스 로직, 비즈니스 규칙, 그리고 데이터를 조작하는 데 사용되는 계산 등을 포함합니다. View: 이 부분은 사용자에게 보여지는 UI 부분입니다. 단순히 xml 코드만을 의미하는 것이 아니라, 클릭 리스너나 데이터바인딩을 포함하고 있습니다. 사용자에게 정보를 표시하고 사용자의 명령을 받아들입니다. View는 Model이 가지고 있는 정..

질문 정리 2023.07.31

[7월 기획 기사] 구미 캠퍼스 학생들을 위한 앱을 소개합니다!

안녕하세요. 9기 SSAFYcial 오희주입니다. 저는 여름방학 및 잡페어 기간동안 구미 캠퍼스 9기 학생들끼리 모여서 간단한 프로젝트를 진행했습니다. 구미 생활을 하면서 필요한 기능들을 생각해서 추가해봤습니다. 이번에 버전 2로 업데이트를 하게되면서 커뮤니티 기능도 추가된 구미 인사이더 프로젝트를 소개합니다. 제공하는 기능은 아래와 같습니다. 1. 점심 및 저녁 정보 - 해당 날짜의 점심 시간 전까지는 점심 메뉴를 띄우고, 그 이후로는 저녁 메뉴를 띄우고 있습니다. - 사진이 올라오지 않았을 때는 빈공간으로, 요리가 완성되어 사진이 올라온 이후로는 사진을 띄우고 있습니다. 2. 사평교 사거리 신호등 정보 - 자취생이 많이 이용하는 사거리의 신호등의 남은 시간을 띄우고 있습니다. - 신호등 버튼을 선택하..

SSAFYcial 2023.07.24

왜 코틀린인가요?

새 프로젝트를 시작할 때가 되면 그때의 환경에 맞게 기술스택과 언어등을 정하게 됩니다. 3년정도 전부터 안드로이드 프로젝트를 할 때, 코틀린을 사용해왔는데 이쯤되니 왜 코틀린을 사용하게 되었는지 기억이 나지 않아서 생각난 김에 정리를 하게 되었습니다. 코틀린이란 무엇인가? 코틀린(Kotlin)은 JetBrains가 2011년에 개발한 정적 타입의 프로그래밍 언어입니다. 코틀린은 현대적인 프로그래밍 언어가 가져야 할 특징들을 갖추고 있으며, JVM(Java Virtual Machine), Android, 브라우저, 네이티브 환경에서 동작합니다. 코틀린은 다양한 플랫폼에서 사용될 수 있도록 설계되었으며, Java와 완벽하게 호환될 수 있습니다. 이 때문에 기존의 Java 코드를 변경하지 않고도 코틀린 코드를..

질문 정리 2023.06.27

[6월 기획 기사] 모바일 트랙을 진행한 결과물을 공개합니다.

안녕하세요. 9기 SSAFYcial 오희주입니다. 앞으로 다음 기수에 모바일 트랙에 들어오고 싶은 분, 그리고 모바일 반이 궁금하신 분들을 위해서 모바일 트랙을 진행하며 나온 결과물을 공개합니다. 싸피에서 직접적으로 진행한 프로젝트 같은 결과물은 공개할 수 없기 때문에 배운 것을 복습하는 차원에서 진행한 사이드 프로젝트 코드를 가져왔습니다. https://github.com/noion0511/Log.M GitHub - noion0511/Log.M Contribute to noion0511/Log.M development by creating an account on GitHub. github.com https://play.google.com/store/apps/details?id=com.likewhile..

SSAFYcial 2023.06.27

[백준][Java] 숨바꼭질 3

문제링크 https://www.acmicpc.net/problem/13549 13549번: 숨바꼭질 3 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net # 문제 풀이 수빈이가 할 수 있는 이동은 크게 두가지가 있습니다. 걷기와 순간이동입니다. 둘은 각각 아래와 같습니다. 걷기 -> 1초, x+1 or x-1 순간이동 -> 0초, 2x 수빈이가 동생을 찾을 수 있는 가장 빠른 시간이 몇 초 후인지 구해야합니다. 저는 탐색 조건을 아래와 같이 정했습니다. 1. 이동했을 때, 수빈이의 위치가 정해진 범위를 벗..

알고리즘 2023.05.31

첫 안드로이드의 벽, RecyclerView 사용 방법

안드로이드 리싸이클러뷰(RecyclerView)란? 안드로이드 리싸이클러뷰(RecyclerView)는 안드로이드 앱에서 리스트 형태의 데이터를 효율적으로 표시하고 관리하기 위한 위젯입니다. 리싸이클러뷰는 이전에 사용되던 리스트뷰(ListView)보다 더 강력하고 유연한 기능을 제공합니다.리싸이클러뷰는 다음과 같은 주요 특징을 가지고 있습니다: 1. 재활용(View Recycling): 리싸이클러뷰는 화면에 보여지는 항목만을 생성하고 재활용하여 메모리 사용량을 최적화합니다. 스크롤 시에도 새로운 항목을 생성하는 대신 기존에 보이지 않던 항목을 재활용하여 데이터를 업데이트합니다. 2. 레이아웃 매니저(Layout Manager): 리싸이클러뷰는 레이아웃 매니저를 사용하여 항목의 배치 방식을 결정합니다. 수직..

질문 정리 2023.05.30

[5월 기획 기사] 남은 반년이 기대되는 이유

안녕하세요. 9기 SSAFYcial 오희주입니다. 한학기가 끝나고 이제 곧 계절학기가 시작되는 시점에서 지금까지의 후기를 정리해봤습니다. 저는 삼성 청년 SW 아카데미 과정이 노력하는 만큼 많은 것을 가져갈 수 있는 프로그램이라고 생각합니다. 일 년을 바쁘게 살 각오를 하고 이 프로그램에 지원을 했습니다. 이 프로그램을 수행하는 동안 배우고 얻을 수 있는 것을 모두 가져가려는 생각이었습니다. 그래서 모바일 트랙의 반장, 그리고 이 프로그램의 기자단, 스터디 등 많은 활동을 적극적으로 하며, 학습한 것을 정리하는 능력, 다른 사람들과 소통하고 설득하는 경험 등을 얻었습니다. 대학교 때, 전공을 살려서 개발자가 되기로 결심했습니다. 하지만 바로 취직에 성공하기에는 다방면으로 부족하다고 생각했습니다. 따라서 ..

SSAFYcial 2023.05.30

[SWEA][Java] 탈주범 검거

문제 링크 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PpLlKAQ4DFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com # 문제 풀이 구현 + BFS 이 문제는 파이프가 연결된 곳만 이동할 수 있는데, 파이프가 연결된 것을 확인하기위해서 지금 있는 곳과, 다음에 위치하게 될 장소를 확인해야했습니다. 파이프의 모양에 따라 이동할 수 있는 방향이 달라서, 파이프의 종류에 따라서 이동할 수 있는 방향을 담은 배열을 만들어줬습니다. 그 배열에 들어있는 값은 dx, dy의 index를 기준으로 방향 값을 의미합니다..

알고리즘 2023.05.25

[SWEA][Java] 보급로

문제 링크 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV15QRX6APsCFAYD SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com # 문제 풀이 BFS 출발지에서 도착지까지의 최소 거리를 구하는 것이 아니라 최소 비용을 구하는 것이기 때문에 Node 클래스를 하나 만들어서 BFS를 다 돌리고 난 이후에 나온 값 중 가장 작은 값을 출력했습니다. 방문 처리와 최소비용을 같은 배열에서 처리했습니다. 이전 방문해서 나왔던 값보다 현재 방문해서 나온 값이 더 작은 경우에만 값을 업데이트하고 큐에 넣어줬습니다. 출발지와 도착..

알고리즘 2023.05.23