我已经做了很多搜索.但是,仍然怀疑Node.js的package.json中的主要参数.
我知道第二个问题很奇怪.这是因为我在OpenShift上托管了一个Node.js应用程序,但该应用程序由两个主要组件组成.一个是REST API,另一个是提供服务的通知.
我担心如果将REST API实现为单个线程,则通知传递过程将阻止REST API.但是,他们必须连接到相同的MongoDB盒式磁带.此外,如果可能的话,如果两个组件都可以在相同的档位上运行,我想保存一个档位.
欢迎任何建议.
双方try/rescue
并try/catch
在花好月圆错误处置技术.根据引言指南中的相应章节.
可以使用
try/rescue
构造来挽救错误
另一方面,
throw
和catch
被保留用于它在哪里不可能的,除非通过使用检索的值的情况throw
和catch
.
我rescue
对错误有一个简短的了解.虽然catch
是任何价值.
然而,
throw
和catch
' ?, 否则无法检索值的情况简单表单包含Foundation 5模板.
但是,我无法在Web上找到为Foundation 6修改的任何模板文件.
生成的表单与Foundation 6的结合程度如何?此外,任何慷慨的基金会6模板或修改现有模板的提示?
我有两个模型(比如供应商和咖啡),咖啡模型有供应商模型的外键参考.在ddl期间,我希望这种关系存在于表创建中.但我也希望能够通过Coffee对象引用Supplier对象coffeeObj.supplier.name
.下面是我的虚拟代码.我正在使用MappedTable,foreignKey和TypeMapper.
import scala.slick.driver.H2Driver.simple._
import Database.threadLocalSession
object SlickTest {
// Supplier
case class Supplier(id: Option[Int], name: String)
object Suppliers extends Table[Supplier]("supplier") {
def id = column[Int]("id", O.PrimaryKey, O.AutoInc)
def name = column[String]("name")
def * = id.? ~ name <> (Supplier, Supplier.unapply _)
def findOneById(id: Int): Supplier =
this.map { e => e }.where(r => r.id === id).firstOption.get
}
// Implicit Conversion from Supplier to Int
implicit val supTypeMapper = …
Run Code Online (Sandbox Code Playgroud) 背景
我正在研究拨号器应用程序.我愿意使应用程序opensource.我努力分叉AOSP拨号器应用程序(链接).
但是,我以前没有经历过AOSP申请.几个小时后,我发现它非常困难.
方法尝试
我正在使用Android Studio工作.我已将AOSP组件的资源和源代码复制为我项目中的模块.依赖关系可以解决.
主要困难
依赖性过多.从make文件(链接),拨号器依赖于ContactsCommon(链接),InCallUI(链接),android-common(链接),vcard(链接)等.我尝试通过导入这些模块解决依赖关系.然而,出现了更多的问题.
只有权限才能被授予系统应用程序.
有些方法只能由系统应用程序看到.它们对用户应用程序是隐藏的.
具有重复名称和产品属性的字符串资源.我已经读过它们应该在预编译时处理.但是,是否可以使用Gradle处理它们?
目标
我的目标是发布类似于ExDialer(链接)的增强型拨号器应用程序.我没有制作另一台拨号器来替换自定义ROM中的原始拨号器.
因此,根本不需要许多依赖性和权限.我只是不知道如何分离AOSP应用程序的"系统"部分和"用户"部分.
提议的方法
我很可能会复制和修改资源和源代码,而不是分支原始的AOSP拨号器.他们是否有更好的方法来分配AOSP应用程序,从而重用现有资源和源代码?
背景
我发现样式属性在合并标记上不起作用,或者分别应用属性或应用样式。
已知解决方案
在使用布局的标签上应用样式属性。例如,包括标签和自定义标签。
只是不利用合并。
以编程方式应用样式。
但是,我正在寻找更好的解决方案。
为什么?
太乱了 每次使用布局时,我都必须应用样式属性。我将其设置为单独的布局,因为它们打算被重用。
我故意使用合并标记,因为它们必须是父布局的直接子代。例如,标记是LinearLayout的子代。我应用layout_width =“ 0dp”和layout_weight =“ 1”使它们在父布局中平均分布。
原因2 和标记是通过程序生成的。因此,我只能以编程方式应用样式。这很丑陋,需要额外的维护工作。
目标
令人满意的解决方法。
用于说明目的的XML标签
<merge xmlns:android="http://schemas.android.com/apk/res/android"
style="@style/CustomStyle">
<!-- Omitted -->
</merge>
Run Code Online (Sandbox Code Playgroud)
和
<merge xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1">
<!-- Omitted -->
</merge>
Run Code Online (Sandbox Code Playgroud)
以上两个标签均未设置样式。
android android-layout android-xml android-view android-styles
我有一个简单的Clojure 1.9 项目.
它配置了一个最小的.travis.yml
.
language: clojure
lein: 2.8.1
jdk:
- openjdk8
- openjdk9
- oraclejdk8
- oraclejdk9
Run Code Online (Sandbox Code Playgroud)
OpenJDK 8,OracleJDK 8和OracleJDK 9的构建成功.但是,OpenJDK 9在lein deps
舞台上失败了.
无法从Clojars中检索到五件工件.他们是clojure-complete
,clj-http
和pedestal.service
,pedestal.jetty
和pedestal.service-tools
.
这似乎是与证书相关的一些问题.我在下面列出了一些日志.
Could not find artifact clojure-complete:clojure-complete:jar:0.2.4 in central (https://repo1.maven.org/maven2/)
Could not transfer artifact clojure-complete:clojure-complete:jar:0.2.4 from/to clojars (https://repo.clojars.org/): sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
...
Could not transfer artifact clojure-complete:clojure-complete:pom:0.2.4 from/to …
Run Code Online (Sandbox Code Playgroud) 我从读FOLDR与foldl与foldl"那foldl'
是因为严格财产的长期有限名单更有效.我知道它不适合无限列表.
因此,我只限制长期有限列表的比较.
concatMap
使用foldr
,实现懒惰.但是,根据文章,使用长有限列表将构建一个长的未减少的链.
concatMap :: Foldable t => (a -> [b]) -> t a -> [b]
concatMap f xs = build (\c n -> foldr (\x b -> foldr c b (f x)) n xs)
Run Code Online (Sandbox Code Playgroud)
因此,我提出了以下使用的实现foldl'
.
concatMap' :: Foldable t => (a -> [b]) -> t a -> [b]
concatMap' f = reverse . foldl' (\acc x -> f x ++ acc) []
Run Code Online (Sandbox Code Playgroud)
我已经构建了以下两个函数来测试性能.
lastA = last . concatMap …
Run Code Online (Sandbox Code Playgroud) 我想在Regex
这里有几个.
import Text.Regex
openTag = mkRegex "<([A-Z][A-Z0-9]*)\\b[^>]*>"
closeTag = mkRegex "</\\1>"
any = mkRegex "(.*?)"
Run Code Online (Sandbox Code Playgroud)
openTag ++ any ++ closeTag
< - 仅用于说明目的
我该如何合并它们?具体来说,一个Regex -> Regex -> Regex
功能.或者,转换Regex
回来String
会很好.
openTag ++ "hello" ++ closeTag
< - 仅用于说明目的
因此,我Regex -> String -> Regex
最终可以创建自己的功能.
操纵字符串文字.
import Text.Regex
openTag = "<([A-Z][A-Z0-9]*)\\b[^>]*>"
closeTag = "</\\1>"
any = "(.*?)"
tagWithAny = mkRegex $ openTag ++ any ++ closeTag
tagWith :: String -> Regex …
Run Code Online (Sandbox Code Playgroud) 我知道我不应该这样做
我要求肮脏的黑客做一些令人讨厌的事情
我希望修改纯函数中的参数.
从而达到通过参考传递的效果.
例如,我有以下功能.
fn :: a -> [a] -> Bool
fn a as = elem a as
Run Code Online (Sandbox Code Playgroud)
我希望修改传入的参数.例如列表as
.
as' = [1, 2, 3, 4]
pointTo as as'
Run Code Online (Sandbox Code Playgroud) haskell ×3
android ×2
android-view ×1
android-xml ×1
asynchronous ×1
clojars ×1
clojure ×1
elixir ×1
fold ×1
javascript ×1
leiningen ×1
node.js ×1
openshift ×1
performance ×1
regex ×1
rest ×1
scala ×1
side-effects ×1
simple-form ×1
slick ×1
travis-ci ×1