Pratica - 모나딕 라이브러리, 이제 완전히 Typescript로 제공됩니다!

Pratica이 이제 완전히 Typescript로 작성되었습니다!

프라티카란?



Pratica은 Crocks 또는 Monet JS에 필적하는 초소형 720B 모나드 라이브러리입니다.

Pratica를 사용하는 이유는 무엇입니까?



Javascript 또는 Typescript로 더 기능적인 코드 작성을 시작하려는 경우 이 라이브러리는 일부 FP 기본 사항을 학습하는 동시에 코드를 더 안전하고 런타임 버그에 대해 더 탄력적으로 만들 수 있는 훌륭한 라이브러리입니다. 초소형 크기와 읽기 쉬운 도트 체인 구문으로 모든 프로젝트에서 쉽게 시작할 수 있습니다.

어떻게 시작합니까?



다음과 같이 설치할 수 있습니다: yarn add pratica 또는 npm i pratica . 그런 다음 다음과 같은 주요 기능을 가져올 수 있습니다.

import { nullable } from 'pratica'

다음과 같이 함수를 함께 구성하여 작고 안전하며 읽기 쉬운 프로그램을 만듭니다.

// Typescript

import { Maybe, nullable, get, parseDate } from 'pratica'

const getPersonAge = (person?: Person): Maybe<number> =>
  nullable(person)
    .chain(get<string>(['birthday']))
    .chain(parseDate)
    .map(birthday => Date.now() - birthday.getTime())
    .chain(parseDate)
    .map(date => Math.abs(date.getUTCFullYear() - 1970))


getPersonAge({ birthday: '1994-06-08' }) // -> Just(25)
getPersonAge({ birthday: 771033600000  }) // -> Just(25)
getPersonAge({ birthday: null }) // -> Nothing
getPersonAge(null) // -> Nothing

Pratica는 React와도 잘 작동합니다! 누락된 데이터가 있는 경우를 처리하기 위해 JSX에서 사용하십시오.

const viewPersonAge = ({ person }) =>
  getPersonAge(person).cata({
    Just: age => <div>{age}</div>
    Nothing: () => <span>No age available</span>
  })

사용해 보세요



온라인 브라우저 샌드박스에서 사용해 보십시오here!.

또는 아래 Github에서 확인하세요!


라메타 / 프라티카


🥃 기능 대수 데이터 유형









🥃 프라티카


Functional Programming for Pragmatists


왜 이것이 실용주의자를 위한 것이라고 말합니까?
Pratica는 대수적 데이터 유형을 통해 데이터 무결성과 안전성을 유지하면서 목표를 신속하게 달성하는 데 사용할 수 있는 더 간단하고 접근하기 쉬운 API를 제공하기 위해 몇 가지 일반적인 FP 지침을 희생합니다.
V1 문서 - 확인v1 docs readme

설치


원사로
yarn add pratica

또는 npm을 선호하는 경우
npm i pratica

선적 서류 비치


목차

  • Monads

  • Maybe
  • .map
  • .chain
  • .ap
  • .alt
  • .cata
  • .toResult
  • .inspect
  • .isNothing
  • .isJust


  • Result
  • .ap
  • .map
  • .mapErr
  • .chain
  • .chainErr
  • .bimap
  • .swap
  • .cata
  • .toMaybe
  • .inspect
  • .isErr
  • .isOk



  • Utilities
  • encase
  • encaseRes
  • justs
  • oks
  • get
  • head
  • last
  • tail
  • tryFind
  • parseDate


  • V1에서 V2로 변경


    Pratica V1에서 V2로 마이그레이션하는 경우. 다음은 변경 사항에 대한 작은 목록입니다.
  • Maybe() 유틸리티 이름이 nullable()로 변경되었습니다.
  • .default(() => 'value').alt('value')로 이름이 변경되었으며…
  • 가 필요하지 않습니다.


    View on GitHub

    좋은 웹페이지 즐겨찾기