전체 글

공부/JAVA + SPRING

JAVA 스터디 2 JVM 구조

JVM 구조 클래스 로더 시스템 ● .class 에서 바이트코드를 읽고 메모리에 저장 > 바이트코드를 javac를 통해 decompile 해서 사람 눈에 쉽게 볼수 잇게 해줌 ● 클래스로더 하는일 1. 로딩: 클래스(바이트코드) 읽어오는 과정 2. 링크: 레퍼런스를 연결하는 과정 3. 초기화: static 값들 초기화 및 변수에 할당 메모리 ● 메모스 영역에는 클래스 수준의 정보 (클래스 이름, 부모 클래스 이름, 메소드, 변수) 저장. 공유 자원이다. > 클래스 수준의 정보들이 메소드에 저장됨. 메소드에 저장된 건 공유자원=참조가능 ● 힙 영역에는 객체를 저장. 공유 자원이다. > 인스턴스 저장 >> 그외에 스택, PC, 네이티브 메소드 스택은 쓰레드에 국한됨. 쓰레드에서만 공유하는 자원 ● 스택 영역..

공부/JAVA + SPRING

JAVA 스터디 1 JAVA, JVM, JDK, JRE 이해하기

* 본 포스팅은 인프런 강의 "더 자바, '코드를 조작하는 다양한 방법'" 강의를 보고 정리한 것임 JVM(Java Virtual Machine) ● 자바 가상머신으로 자바 바이트 코드(.class 파일)를 OS에 특화된 코드로 변환(인터프리터와 JIT컴파일러) 하여 어떻게 실행할지에 대한 표준 스펙 > 바이트 코드 : 클래스 파일 안에 들어 있는 Complied ~ } 까지가 모두 바이트 코드 ● 바이트 코드를 실행하는 표준(JVM 자체는 표준)이자 구현체(특정 밴더가 구현한 JVM)다. ● JVM 스팩: https://docs.oracle.com/javase/specs/jvms/se11/html/ > JVM 스펙을 여러 벤더에서 스펙에만 맞춰서 마음대로 구현할수 있음 ● JVM 밴더: 오라클, 아마존..

PS/프로그래머스

프로그래머스 문자열 내 p와 y의 개수 JAVA

최근에 작은따옴표, 큰따옴표가 중요하지 않은 걸 계속 배우다 보니 자바에서도 그랬다가 이걸로만 10분을 잡아 먹어버림 하... 자괴감이 좀 들었지만 그래도 쉽게 풀었으니(아주 쉬운 문제^^;) 조금 자기 위안 한다. 자바 공부를 해야겠다. class Solution { boolean solution(String s) { boolean answer = true; String[] arr = s.toLowerCase().split(""); int pNum=0; int yNum =0; for(int i=0; i

PS/프로그래머스

프로그래머스 x만큼 간격이 있는 n개의 숫자 JAVA

아주 쉬워서 당당하게 풀었더니 fail //Fail class Solution { public long[] solution(int x, int n) { long[] answer = {}; answer = new long[n]; answer[0] = x; for(int i=1; i

공부/Flutter

Flutter 스터디 33 Sliver, Scrolling

[Flutter / 플러터] 나는 sliver와 스크롤링을 제대로 알고 있을까? Sliver 사전 의미 : 잘게 부수어 만든 작거나 얇은 조각 플러터 : 스크롤 가능한 영역의 일부분 코딩 셰프 : Sliver is a slice of something that scrolls. 스크롤 되는 영역을 이루는 조각 하나하나를 의미하는 것 slivers (복수) : 스크린 상에서 스크롤 되는 영역 의미 ListView vs. SliverList GridView vs. SliverGrid 사실, ListView == SliverList / GridView == SliverGrid ListView, GridView SliverList, SliverGird sliver로 이루어짐 위젯 O 위젯 X SliverList를..

공부/Flutter

Flutter 스터디 32 웹 상의 Json 데이터 파싱해서 플러터 앱에 출력하기

[Flutter / 플러터] 웹상에 있는 Json 데이터 실패 없이 끌어와서 보여주기 기본 코드 2개 //main.dart import 'package:flutter/material.dart'; import 'json_parse.dart'; void main() { runApp(const MyApp()); } class MyApp extends StatelessWidget { const MyApp({Key? key}) : super(key: key); @override Widget build(BuildContext context) { return MaterialApp( theme: ThemeData( primarySwatch: Colors.blue ), home: JsonParse(), ); } } //..

공부/Flutter

Flutter 스터디 31 MySQL 이용해서 플러터 앱 만들기

[Flutter / 플러터] No more 파이어베이스! MySQL로 플러터 앱 만들기 part1,2 기본 소스 코드(코딩셰프) GitHub - icodingchef/mysql_git: mysql_part1 mysql_part1. Contribute to icodingchef/mysql_git development by creating an account on GitHub. github.com XAMPP 설치 = 서버설치 (* 참고 기존에 이미 apache나 mariaDB 등이 설치되어 있는 경우 에러가 발생한다고 함. 코딩셰프 강사님이 참고하라는 블로그가 있으니 혹시나 에러나면 참조. https://patiencelee.tistory.com/1108 ) Download XAMPP Includes: Ap..

공부/Flutter

Flutter 스터디 30 Cloud Firestore 기본 구조 및 기본 CRUD

플러터 강좌 Firestore, 감당하실 수 있겠습니까? 기본 프로젝트 소스코드 (코딩셰프) GitHub - icodingchef/firestore_lec: colud_firestore colud_firestore. Contribute to icodingchef/firestore_lec development by creating an account on GitHub. github.com 1. MySql 데이터 구조와 Cloud Firestore 데이터 구조 - MySQL의 테이블 생성 = 컬렉션 시작 - Row/Column 2. Cloud Firestore에서 데이터 읽어오기 CollectionReference product = FirebaseFirestore.instance.collection('ite..

_룰루
룰루랄라